Я хотел бы представить результаты многомерного логистического регрессионного анализа (GLM )для конкретных независимых переменных, скорректированных (, т.е. не зависящих от искажающих факторов, включенных в модель )отношения с результатом (бинарным ).
Я видел сообщения, которые рекомендуют следующий метод с использованием команды predict
, за которой следует curve
, вот пример;
x <- data.frame(binary.outcome, cont.exposure)
model <- glm(binary.outcome ~ cont.exposure, family=binomial, data=x)
plot(cont.exposure, binary.outcome, xlab="Temperature",ylab="Probability of Response")
curve(predict(model, data.frame(cont.exposure=x), type="resp"), add=TRUE, col="red")
Однако это, похоже, не работает для многомерных регрессионных моделей. Я получаю следующую ошибку, когда добавляю «возраст» (произвольно -может быть любой переменной той же длины )в качестве смешанной переменной;
> x <- data.frame(binary.outcome, cont.exposure, age)
> model <- glm(binary.outcome ~ cont.exposure + age, family=binomial, data=x)
> plot(cont.exposure, binary.outcome, xlab="Temperature",ylab="Probability of Response")
> curve(predict(model, data.frame(cont.exposure=x), type="resp"), add=TRUE, col="red")
Error in model.frame.default(Terms, newdata, na.action = na.action, xlev = object$xlevels) :
variable lengths differ (found for 'age')
In addition: Warning message:
'newdata' had 101 rows but variable(s) found have 698 rows
Вышеупомянутая модель является упрощенной версией моделей, которые я хотел бы запустить, но принцип тот же; Я хотел бы построить взаимосвязь между бинарной переменной результата и непрерывным воздействием, независимо от искажающих факторов. .
Было бы здорово получить либо обходной путь для вышеуказанного, либо альтернативный способ просмотра интересующих меня отношений. Большое спасибо.