Проблемы с настройкой контрастов для ANOVA в R - PullRequest
2 голосов
/ 20 апреля 2019

Для проверки конкретной гипотезы я пытаюсь сопоставить фактор в 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 Ответ

2 голосов
/ 20 апреля 2019

Мы указываем параметр how.many, и он должен работать. Согласно ?contrasts

how.many. Сколько контрастов нужно сделать? По умолчанию один меньше, чем количество уровней х. Это не должно совпадать с количеством столбцов значения.

Итак, это поведение по умолчанию, которое мы наблюдаем при выполнении назначения без какого-либо 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

данные

set.seed(24)
data <- data.frame(var = sample(paste0("var", 1:4), 20, replace = TRUE))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...