R中ANOVA的对比度设置问题

时间:2019-04-20 14:27:24

标签: r statistics anova

为了检验特定的假设,我正在尝试对比R中的一个因素。

set.seed(24)
data <- data.frame(var = sample(1:100, 70, replace = TRUE),
              version = rep(c("v3", "v4", "v1", "v3", "v4","v2","v2"),times=10)) 

c1 <- c(1/3, -1, 1/3, 1/3) 
c2 <- c(0, -1, 1, 0) 
c3 <- c(0, -1, 0, 1)
c4 <- c(1, -1, 0, 0) 

mat <- cbind(c1, c2, c3, c4)

contrasts(data$version, how.many = 4) <- mat

model <- aov(var ~ version, data = data)

summary.aov(model, split=list(version=list("comparison1"=1,"comparison2"= 2,
                                       "comparison3"=3,"comparison4"= 4))) 

为什么比较4没有结果?我该如何解决?谢谢。

1 个答案:

答案 0 :(得分:2)

我们指定了how.many参数,它应该可以工作。根据{{​​1}}

  

how.many-应该进行多少对比。默认值比x的级别数小一。该值不必与value的列数相同。

所以,这是我们在没有任何?contrasts参数的情况下进行分配时观察到的默认行为

how.many

数据

contrasts(data$var, how.many = 4) <- mat
contrasts(data$var)
#             c1 c2 c3 c4
#var1  0.3333333  0  0  1
#var2 -1.0000000 -1 -1 -1
#var3  0.3333333  1  0  0
#var4  0.3333333  0  1  0