ANOVA p值根据是否使用因子而变化

时间:2018-03-28 21:36:02

标签: r

我正在对一些实验数据进行标准的ANOVA测试。

data$group <- factor(data$group, ordered=FALSE)
analysis <- aov(output ~ group,data=vr2)
summary(analysis)

输出数据是离散的(0-7),组编号为1,2和3.如果我放弃第一行,使组成为因子,则p值从0.006变为0.001。

这是什么原因?

1 个答案:

答案 0 :(得分:1)

首先,如果您的因变量是离散的,那么正常的ANOVA不是一个合适的模型,因为它假设一个连续的响应变量。哪种线性模型适合取决于您使用的数据类型(序数?计数?)。

其次,aov()在引擎盖下只是一个线性模型。当线性模型“看到”一个数字变量时,它只是按预期运行线性回归而不是ANOVA。请尝试以下代码

x <- sample(1:3, 20, replace=T)
y <- rnorm(20)
summary(aov(y ~ x))
summary(lm(y ~ x))
x <- factor(x)
summary(aov(y ~ x))

请注意前两个模型中相同的p值。