如何在 R 中执行 MANOVA 测试?
How to perform MANOVA test in R?
我试图找到 Group
中的自变量与我的 data
数据集中的因变量 Level1
和 Level2
的 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
我试图找到 Group
中的自变量与我的 data
数据集中的因变量 Level1
和 Level2
的 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