#r #logistic-regression
#r #логистическая регрессия
Вопрос:
У меня есть модель логистической регрессии, для которой я использую пакет rms. Модель лучше всего подходит для использования логарифмического термина для tn1, а для клинической интерпретации я использую log2. Я запустил модель с использованием lrm из пакета rms, а затем, чтобы перепроверить, я запустил ее с помощью glm. Начальные коэффициенты одинаковы:
h <- lrm(formula = outcomehosp ~ I(log2(tn1 0.001)) apscore_ad
emsurg corrapiidiag, data = d, x = TRUE, y = TRUE)
Coef S.E. Wald Z Pr(>|Z|)
Intercept -3.4570 0.3832 -9.02 <0.0001
tn1 0.0469 0.0180 2.60 0.0093
apscore_ad 0.1449 0.0127 11.44 <0.0001
emsurg 0.0731 0.3228 0.23 0.8208
f <- glm(formula = outcomehosp ~ apscore_ad emsurg corrapiidiag
I(log2(tn1 0.001)), family = binomial(), data = tn24)
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -3.45699 0.38315 -9.023 < 2e-16
I(log2(tn1 0.001)) 0.04690 0.01804 2.600 0.00932
apscore_ad 0.14487 0.01267 11.438 < 2e-16
emsurg 0.07310 0.32277 0.226 0.82082
Однако, когда я пытаюсь получить коэффициенты шансов, они заметно отличаются для tn1 между двумя моделями, и, похоже, это не разница в преобразовании log2.
summary(h)
Effects Response : outcomehosp
Factor Low High Diff. Effect S.E. Lower 0.95 Upper 0.95
tn1 0 0.21 0.21 0.362120 0.15417 6.5300e-02 0.673990
Odds Ratio 0 0.21 0.21 1.436400 NA 1.0675e 00 1.962100
apscore_ad 14 25.00 11.00 1.593600 0.15631 1.3605e 00 1.961000
Odds Ratio 14 25.00 11.00 4.921400 NA 3.8981e 00 7.106600
emsurg 0 1.00 1.00 0.073103 0.33051 -5.8224e-01 0.734860
Odds Ratio 0 1.00 1.00 1.075800 NA 5.5865e-01 2.085200
exp(f$coefficients)
(Intercept) 0.03152467
apscore_ad 1.15589222
emsurg 1.07584115
I(log2(tn1 0.001)) 1.04802
Кто-нибудь сможет объяснить, для чего пакет rms вычисляет отношение шансов? Большое спасибо.
Ответ №1:
tn1
Эффект от summary(h)
— это влияние на логарифм отношения шансов tn1
перехода от 0 к 0,21 — межквартильный диапазон. См ?summary.rms
.
Итак, эффект от первой строки summary(h)
равен 0.36212 = (log2(0.211)-log2(0.001))*.0469
.
Комментарии:
1. Это прекрасно объясняет, большое вам спасибо. Возможно ли изменить эффект на изменение на 1 единицу, а не на межквартильный диапазон?
2. См
?summary.rms
. , Особенно раздел Аргументы, в частности ту часть, которая гласитSpecify e.g. ‘age=c(40,60)’ to estimate the effect of increasing age from 40 to 60
.