我想对不同的数值向量运行 100 个方差分析。
我的数值向量是 (ruy, fjr, akf...) 来 self 的 data.frame
aa=aov(data.frame$ruy~data.frame$Group)
anova(aa)
ab=aov(data.frame$fjr~data.frame$Group)
anova(ab)
ac=aov(data.frame$akf~data.frame$Group)
anova(ac)
.....
.....
我的循环技巧很差,所以请友善。
最佳答案
由于 aov
基于 lm
,因此您可以在 LHS 上cbind
因变量,这会导致运行单独的模型:
formula <- as.formula(paste0("cbind(", paste(names(iris)[-5], collapse = ","), ") ~ Species"))
fit <- aov(formula, data=iris)
summary(fit)
# Response Sepal.Length :
# Df Sum Sq Mean Sq F value Pr(>F)
#Species 2 63.212 31.606 119.26 < 2.2e-16 ***
#Residuals 147 38.956 0.265
#---
#Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#
# Response Sepal.Width :
# Df Sum Sq Mean Sq F value Pr(>F)
#Species 2 11.345 5.6725 49.16 < 2.2e-16 ***
#Residuals 147 16.962 0.1154
#---
#Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#
#</snip>
关于r - 在 R 中循环许多单边方差分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26889240/