我有兴趣使用aov函数对数据框中的多个变量进行ANOVA,因为我尝试为每个变量做anova。所以我很感兴趣,如果有人帮我制作一个可以解决我的问题的功能。由于我是R的新手,因此解决我的问题时遇到了很多困难。我的数据有超过6个响应变量要分析,所以我想使用aov()函数一次做anova而不是单独做。非常感谢你的帮助。
答案 0 :(得分:0)
正如@Bryan Hanson所指出的那样,manova
可以解决你的问题。以下是它如何适用于您的特定问题的示例。
# Build Sample Data
df <- data.frame(y1 = rnorm(10), y2 = rnorm(10), y3 = rnorm(10), y4 = rnorm(10), y5 = rnorm(10), y6 = rnorm(10), x1 = rnorm(10), x2 = rnorm(10))
# cbind dependent variables and run manova
Y <- cbind(df$y1, df$y2, df$y3, df$y4, df$y5, df$y6)
manova(Y ~ x1 + x2, data = df)
输出:
Call:
manova(Y ~ x1 + x2, data = df)
Terms:
x1 x2 Residuals
resp 1 0.001532 0.252473 2.200198
resp 2 0.796773 0.465659 2.965143
resp 3 3.670896 1.050089 14.643251
resp 4 1.284050 0.002343 6.391881
resp 5 0.486498 0.845829 1.996499
resp 6 0.264803 0.147223 5.971596
Deg. of Freedom 1 1 7
Residual standard errors: 0.5606371 0.6508394 1.446338 0.9555762 0.5340545 0.923626
Estimated effects may be unbalanced