无法在我的 for 循环代码中正确打印每次迭代
Can't print each iteration in my for loop code correctly
如何为此打印每次迭代?它只是多次打印第一次迭代。或者这是否没有正确地遍历每一列?
编辑:刚刚意识到我一直在方差分析中指定相同的变量。但现在我不知道如何 运行 在每一列上进行方差分析。
CR <- data2[data2$cv == "CR",]
colu <- CR[,5:36]
for (i in colnames(colu)){
ANOVA <- aov(i ~ block + loc, data=CR)
ANOVA_SUMMARY <- summary(ANOVA)
test <- HSD.test(ANOVA , "loc")
print(test$groups)
}
i 不包含在您的 for 循环中,因此它将打印
的结果
aov(days_til_flower ~ block + loc, data=CR)
您应该使用 reformulate
或 as.formula
来创建在 aov
中使用的公式对象。试试,
for (i in colnames(colu)){
ANOVA <- aov(reformulate(c('block', 'loc'), i), data=CR)
ANOVA_SUMMARY <- summary(ANOVA)
test <- HSD.test(ANOVA , "loc")
print(test$groups)
}
如何为此打印每次迭代?它只是多次打印第一次迭代。或者这是否没有正确地遍历每一列?
编辑:刚刚意识到我一直在方差分析中指定相同的变量。但现在我不知道如何 运行 在每一列上进行方差分析。
CR <- data2[data2$cv == "CR",]
colu <- CR[,5:36]
for (i in colnames(colu)){
ANOVA <- aov(i ~ block + loc, data=CR)
ANOVA_SUMMARY <- summary(ANOVA)
test <- HSD.test(ANOVA , "loc")
print(test$groups)
}
i 不包含在您的 for 循环中,因此它将打印
的结果 aov(days_til_flower ~ block + loc, data=CR)
您应该使用 reformulate
或 as.formula
来创建在 aov
中使用的公式对象。试试,
for (i in colnames(colu)){
ANOVA <- aov(reformulate(c('block', 'loc'), i), data=CR)
ANOVA_SUMMARY <- summary(ANOVA)
test <- HSD.test(ANOVA , "loc")
print(test$groups)
}