在这段代码中,我想要区分t测试的$p值和Wilicoxon的$p值,我怎么能做到呢?
replicate(1000, ifelse(shapiro.test(rnorm(4))$p.value>=0.05,t.test(rnorm(4), alternative = "two.sided")$p.value, wilcox.test(rnorm(4), mu = 0, alternative = "two.sided")$p.value))
从这段代码中,我将得到t检验和Wilcoxon检验的1000 p值,如果Shapiro-Wilk检验的p值大于0.0 5,我们将得到t检验的p-值,如果它小于0.0 5,我们将得到Wilcoxon检验的p-值,我的q是如何从这1000 p-值中得到t-test的列表或p-值的向量。
发布于 2022-05-06 10:23:35
像这样吗?
library(data.table)
set.seed(1)
df <- data.table(data = rnorm(4000), sample=rep(1:1000, each=4))
result <- df[, .(s=shapiro.test(data)$p.value,
w=wilcox.test(data)$p.value,
t=t.test(data)$p.value),
by=.(sample)]
result[, final:=ifelse(s < 0.05, w, t)]https://stackoverflow.com/questions/72135046
复制相似问题