У недавньому документі Norton et al. (2018) [ 1 ] стверджують, що
Різні коефіцієнти шансів одного і того ж дослідження не можна порівняти, коли статистичні моделі, які призводять до оцінки коефіцієнта шансів, мають різні пояснювальні змінні, оскільки кожна модель має різний довільний масштабуючий коефіцієнт. Не можна також порівнювати величину коефіцієнта шансів від одного дослідження з величиною коефіцієнта шансів від іншого дослідження, оскільки різні вибірки та різні специфікації моделі матимуть різні довільні коефіцієнти масштабування. Наступним наслідком є те, що величини коефіцієнтів шансів даної асоціації в декількох дослідженнях не можуть бути синтезовані в мета-аналізі.
Невелике моделювання ілюструє це (R-код знаходиться внизу питання). Припустимо, що справжня модель:
res_1 res_2 res_3 res_4
1.679768 1.776200 2.002157 2.004077
Очевидно, що лише дослідники 3 і 4 отримують правильне співвідношення шансів приблизно тоді як дослідники 1 і 2 цього не роблять. Це не відбувається при лінійній регресії, що можна легко показати аналогічним моделюванням (тут не показано). Треба зізнатися, що цей результат мене дуже здивував, хоча ця проблема, здається, добре відома [ 2 ] . Ернан та ін. (2011) [ 3 ] називають це "математичною диваковістю" замість упередженості.
Мої запитання:
- Якщо коефіцієнти шансів в основному не відрізняються між дослідженнями та моделями, то як можна поєднати результати різних досліджень для двійкових результатів?
- Що можна сказати про незліченні мета-аналізів, так і комбінують відносини шансів з різних досліджень , в яких кожне дослідження , можливо , з поправкою на інший набір регресорів? Вони по суті марні?
Список літератури
[1]: Нортон ЕК, Dowd BE, Maciejewski ML (2018): Коефіцієнти шансів - поточна найкраща практика та використання. JAMA 320 (1): 84-85.
[2]: Norton EC, Dowd BE (2017): коефіцієнти журналу та інтерпретація моделей Logit. Служба охорони здоров'я Res. 53 (2): 859-878.
[3]: Ернан М.А., Клейтон D, Кідінг N (2011 р.): Парадокс Сімпсона розгаданий. Int J Епідеміол 40: 780-785.
Розкриття інформації
Питання (включаючи код R) - це модифікована версія запитання, поставленого користувачем- тайміджером на методах даних .
R код
set.seed(142857)
n_sims <- 1000 # number of simulations
out <- data.frame(
treat_1 = rep(NA, n_sims)
, treat_2 = rep(NA, n_sims)
, treat_3 = rep(NA, n_sims)
, treat_4 = rep(NA, n_sims)
)
n <- 1000 # number of observations in each simulation
coef_sim <- "x1" # Coefficient of interest
# Coefficients (log-odds)
b0 <- 1
b1 <- log(2)
b2 <- log(2.5)
b3 <- log(3)
b4 <- 0
for(i in 1:n_sims){
x1 <- rbinom(n, 1, 0.5)
x2 <- rnorm(n)
x3 <- rnorm(n)
x4 <- rnorm(n)
z <- b0 + b1*x1 + b2*x2 + b3*x3 + b4*x4
pr <- 1/(1 + exp(-z))
y <- rbinom(n, 1, pr)
df <- data.frame(y = y, x1 = x1, x2 = x2, x3 = x3, x4 = x4)
model1 <- glm(y ~ x1, data = df, family = "binomial")
model2 <- glm(y ~ x1 + x2, data = df, family = "binomial")
model3 <- glm(y ~ x1 + x2 + x3, data = df, family = "binomial")
model4 <- glm(y ~ x1 + x2 + x3 + x4, data = df, family = "binomial")
out$treat_1[i] <- model1$coefficients[coef_sim]
out$treat_2[i] <- model2$coefficients[coef_sim]
out$treat_3[i] <- model3$coefficients[coef_sim]
out$treat_4[i] <- model4$coefficients[coef_sim]
}
# Coefficients
colMeans(out)
exp(colMeans(out)) # Odds ratios