【发布时间】:2014-07-24 18:46:37
【问题描述】:
我正在尝试使用 R 对大型数据集进行学生 t 检验和卡方检验。由于我对 R 相当陌生,我的经验不足一直阻碍我自己的代码取得很大成功。
两个数据集都缺少数据,看起来像这样:
AA assayX activity assayY1 activity assayY2 activity
chemical 1 TRUE 0 12.2
chemical 2 TRUE 0
chemical 3 45.2 35.6
chemical 4 FALSE 0 0
AB assayX activity assayY1 activity assayY2 activity
chemical 1 TRUE FALSE TRUE
chemical 2 TRUE FALSE
chemical 3 TRUE TRUE
chemical 4 FALSE FALSE FALSE
由于它是一个大型数据集,我正在尝试创建一个代码,我可以在其中将assayX 与所有assayY 进行比较。我希望为第一个数据集创建一个学生 t 检验循环,并为第二个数据集创建一个卡方循环。我之前成功地为相关分析创建了一个循环代码,所以我的代码基于这个想法。
x<- na.omit(mydata1[, c(assayX)])
y<- na.omit(mydata1[, c(assayY1:assayYend)])
lapply(y, function(x)t.test(y~x))
x<-na.omit(mydata2[, c(assayX)])
y<- na.omit(mydata2[, c(assayY1:assayYend)]
lapply(y, x=x, chisq.test)
第一个代码的问题是: 无效变量 y
第二个代码的问题是: x 和 y 必须具有相同的长度
我在这里和那里进行了一些小调整,只是遇到了不同类型的错误,比如没有足够的 'y' 观察值等等。我一直主要使用这个网站来了解 R 是如何工作的,所以我希望你们能为新人提供一个聪明的小解决方案。
【问题讨论】:
标签: r loops chi-squared