在过去的四个小时里,我一直在努力寻找 R 问题的解决方案,这让我发疯了。我到处寻找一个体面的答案,但到目前为止,我一直在碰壁。我现在呼吁这个优秀社区的善意帮助。
考虑以下数据集:
set.seed(2112)
DataSample <- matrix(rnorm(24000),nrow=1000)
colnames(DataSample) <- c(paste("Trial",1:12,sep=""),paste("Control",13:24,sep=""))
我需要对 DataSample 中的每一行执行 t 检验,以确定 TRIAL 和 CONTROL 组是否不同(适用等方差)。
然后我需要计算 p 值等于或小于 0.05的行数。
所以这是我尝试过的代码,我知道这是错误的:
set.seed(2112)
DataSample <- matrix(rnorm(24000),nrow=1000)
colnames(DataSample) <- c(paste("Trial",1:12,sep=""),paste("Control",13:24,sep=""))
pValResults <- apply(
DataSample[,1:12],1,function(x) t.test(x,DataSample[,13:24], var.equal=T)$p.value
)
sum(pValResults < 0.05) # Returns the wrong answer (so I was told)
我确实尝试查看有关 stackoverflow 的许多类似问题,但我经常会遇到语法错误或尺寸不匹配。上面的代码是在不返回 R 错误的情况下我能得到的最好的代码——但由于代码返回了错误的答案,我没有什么可骄傲的。
任何建议将不胜感激!在此先感谢您的时间。