Я довольно новичок в использовании R и надеялся получить помощь по следующей проблеме. Я оценил CI и SD для оценки ED50, полученной из логистической GLMM.Для этого я сделал следующее:
Указал GLMM:
gmod9 = glmer(
BetterNot ~ relPHQADS * baseline_cat + (1 | ID),
family = binomial,
data = Panda.Clean,
control = glmerControl(optimizer = "bobyqa", optCtrl = list(maxfun = 2e5))
)
Исправил коэффициенты:
fc <- fixef(gmod9)
Оценил ED50 на каждом уровне категориальной переменной(baseline_cat):
mild <- -(fc[1]) / fc[2]
mod <- -(fc[1] + fc[3]) / (fc[2] + fc[5])
sev <- -(fc[1] + fc[4]) / (fc[2] + fc[6])
Используется начальная загрузка для определения SD и CI для каждой оценки ED50 (как сделано для мягкого уровня baseline_cat ниже):
nboot <- 1000
booted50 <- numeric(nboot)
for(i in 1:nboot){
y <- unlist(simulate(gmod9))
bmod <- refit(gmod9, y)
fc <- fixef(bmod)
booted50[i] <- -(fc[1])/fc[2]
}
sd.mild <- sd(booted50)
ci.mild <- quantile(booted50, c(0.025, 0.975))
Я хотел бы сделать то же самое для другого набора данных, используя логистический GLM.
GLM:
gmod9 <- glm(BetterNot ~ absPHQADS + baseline_cat, family = binomial, data = Cobalt.Clean)
cc <- coef(gmod9)
Оценки ED50 рассчитываются следующим образом:
mild <- -(cc[1]) / cc[2]
mod <- -(cc[1] + cc[3]) / cc[2]
sev <- -(cc[1] + cc[4]) / cc[2]
Однако, когда я пытаюсь запустить тот же загрузчик, что и выше, выдается следующее сообщение об ошибке:
Error in UseMethod("refit") :
no applicable method for 'refit' applied to an object of class "c('glm', 'lm')"
Как мне изменить загрузчик, чтобы получить 95% CI и SD длямодель glm?