这是我使用R的头几周,我一直在为一个问题而头疼。我希望你们能帮帮我!
我正在做多向方差分析(Eicosane~SEX+STATUS,data=data_wide)。现在我有大约26个不同的因变量,它们是在铃木果蝇身上发现的化合物(在这个例子中是二十烷),我想看看发现的化合物是否可以与性别或地位有关。有没有一种方法可以使用某种循环,这样我就不需要每次都手动更改因变量,并可以在一个文件中获得输出?
Someone recommended; {For (i in 1:26)}
(aov(i ~SEX+STATUS,data=data_wide)}
Result}但它给出了错误:意外的'in‘。R是否自动将我的数据集中的列编号为1、2、3等。?
我希望这个新手问题能说清楚,我很抱歉,但我自己似乎就是想不通。
非常感谢!
发布于 2015-12-11 02:17:42
例如:
data(prostate, package= "faraway")
for (i in 1:ncol(prostate)) {
print(summary(aov(prostate[,i] ~., data= prostate)))
}在本例中,我使用所有列,而不是aov调用中剩余的1列。如果您希望从因变量集中排除SEX和STATUS,则必须修改for循环中的调用,例如:
cols <- (1:ncol(data_wide))[-c(which(names(data_wide) %in% c("SEX", "STATUS")))]
for (i in cols) {...}https://stackoverflow.com/questions/34208460
复制相似问题