如何在 R 中执行 MANOVA 测试?

How to perform MANOVA test in R?

我试图找到 Group 中的自变量与我的 data 数据集中的因变量 Level1Level2 的 2 个样本之间的任何相互作用(大小减小) .

Group Level1 Level2
a     1      0
a     2      3
a     4      3
b     2      4
b     1      3
b     3      2
c     2      4
c     3      2
c     1      3

为此,我想 运行 进行 manova 测试。 但是,当我尝试 运行 manova(data[,2:3] ~ as.factor(Group), data=data) 时,我得到 invalid type (list) for variable 'data[,2:3]' 错误,尽管 data[,2:3] 是一个列表。

(显然,这是我第一次尝试使用 manova,基本上是 R 来完成这项任务,我对 R 有非常基本的了解,所以也许我完全错了我做的一般)。

你需要 运行 这样使用 cbind:

数据

df <- read.table(header=T, text='Group Level1 Level2
a     1      0
a     2      3
a     4      3
b     2      4
b     1      3
b     3      2
c     2      4
c     3      2
c     1      3')

解决方案:

> manova( cbind(Level1,Level2) ~ Group, data=df)
Call:
   manova(cbind(Level1, Level2) ~ Group, data = df)

Terms:
                   Group Residuals
resp 1          0.222222  8.666667
resp 2                 2        10
Deg. of Freedom        2         6

Residual standard errors: 1.20185 1.290994
Estimated effects may be unbalanced