使用Logistic回归和评分测试的3组类别变量之间的差异

时间:2018-09-23 07:31:58

标签: r frequency logistic-regression difference

我得到的数据看起来像这样:一组27个对象在3个时间点具有一个二分变量y1。 y1的概率在3个时间点之间不同(分别为100%,85%和40%)。

我想证明它们之间的差异是每个时间点之间(t1-t2,t1-t3和t2-t3之间)的显着差异。为此,我要遵循此other question

的建议,使用Langrange乘数(或R的“得分”或“ Rao”)进行逻辑回归

数据模拟

library(dplyr)
library(multcomp)

funda = 25
y_sub1 = rbinom(funda, 1, 0.85)
y_sub2 = rbinom(funda, 1, 0.4)
y1 = c(rep(1,funda), y_sub1, y_sub2)
y1[2*funda + 3] = NA
time = c(rep("t1", funda), rep("t2", funda), rep("t3", funda))
ID_init = c()
for (i in 1:funda){
  ID_init = c(ID_init, paste0("ID", i))
}
ID = rep(ID_init, 3)
df = data.frame(y1, time, ID)

逻辑回归:

mod_glm = glm(y1 ~ time, data = df, family = "binomial")
mod_glm = anova(mod_glm, test = "Rao")
mod_glm
mod_glm = glht(mod_glm, linfct = mcp(time = "Tukey")) %>% summary()
mod_glm

但是我收到此错误消息:

Error in factor_contrasts(model) : no 'model.matrix' method for 'model' found!

0 个答案:

没有答案