Я анализирую набор данных участников двоичных ответов на некоторые вопросы. Я использую функцию glm
, чтобы проверить, как Var * Base_con
влияет на результат Dec
. После подгонки я пытаюсь сравнить, как фактор «Var» влияет на результат в каждом из уровней фактора «Base_con». После this vignette я попробовал следующее (неисправный) подход, который я считаю, может быть воспроизведен (пожалуйста, дайте мне знать, если он не работает):Несколько сравнений после GLM, включая условия взаимодействия
# load example dataset with relevant columns
require(RCurl)
my_csv = getURL("https://docs.google.com/spreadsheets/d/1sBVW7QbnfumeRmY1uEDdiDNJE7QfmCXH0wMmV2lZSH4/pub?gid=0&single=true&output=csv")
eg_data = read.csv(textConnection(my_csv))
# set columns as factors because they are numerically coded
eg_data$Base_con = as.factor(eg_data$Base_con)
eg_data$Var = as.factor(eg_data$Var)
eg_data$Dec = as.factor(eg_data$Dec)
# GLM fit
m1 = glm(Dec ~ Var * Base_con, data = eg_data, family = "binomial")
# strategy for Tukey multiple comparisons
require(multcomp)
tmp = expand.grid(Base_con = unique(eg_data$Base_con), Var = unique(eg_data$Var))
X = model.matrix(~Base_con : Var, data = tmp)
mc = glht(m1, linfct = X)
Выход для последней команды:
Error in glht.matrix(m1, linfct = X) :
‘ncol(linfct)’ is not equal to ‘length(coef(model))’
в действительности, число столбцов и длина этих двух элементов, представленных в сообщении об ошибке разные:
> ncol(X)
[1] 7
> length(coef(m1))
[1] 6
это все, что я был в состоянии продвинуться так далеко. Есть идеи? Спасибо всем.
Обратите внимание, что 'lme4' пакет * не * есть' glm' функция; 'glm()' находится в базовом пакете. Если у вас есть несколько ответов для каждого участника, вам, вероятно, нужно использовать 'glmer'. – gung
@gung, ты прав. Это основная функция 'glm'. На этот раз нет повторных мер, поэтому нет необходимости использовать 'glmer'. @Silverfish, я попытаюсь отредактировать, используя воспроизводимый пример, хотя я не уверен, что смогу воспроизвести ошибку. –
Если * вы * не можете воспроизвести ошибку, @Lea_Casiraghi, как бы * мы * уметь? & как мы сможем найти решение без воспроизведения ошибки? – gung