Apakah meta-analisis rasio odds pada dasarnya tidak ada harapan?

12

Dalam sebuah makalah baru-baru ini Norton et al. (2018) menyatakan itu[1]

Rasio odds yang berbeda dari studi yang sama tidak dapat dibandingkan ketika model statistik yang menghasilkan estimasi rasio odds memiliki variabel penjelas yang berbeda karena setiap model memiliki faktor penskalaan arbitrer yang berbeda. Juga tidak bisa besarnya rasio odds dari satu studi dibandingkan dengan besarnya rasio odds dari studi lain, karena sampel yang berbeda dan spesifikasi model yang berbeda akan memiliki faktor penskalaan yang berbeda pula. Implikasi lebih lanjut adalah bahwa besarnya rasio odds dari asosiasi yang diberikan dalam beberapa penelitian tidak dapat disintesis dalam meta-analisis.

Simulasi kecil menggambarkan hal ini (kode R ada di bagian bawah pertanyaan). Misalkan model yang benar adalah: Bayangkan lebih lanjut bahwa data yang sama yang dihasilkan oleh model di atas dianalisis oleh empat peneliti yang berbeda menggunakan regresi logistik. Peneliti 1 hanya menyertakan sebagai kovariat, peneliti 2 mencakup dan x_ {2} dan seterusnya. Estimasi rata-rata simulasi dari odds ratio untuk x_ {1} dari empat peneliti adalah:

logit(yi)=1+log(2)x1i+log(2.5)x2i+log(3)x3i+0x4i
x1x1x2x1

res_1    res_2    res_3    res_4 
1.679768 1.776200 2.002157 2.004077

Jelas bahwa hanya peneliti 3 dan 4 yang mendapatkan rasio odds yang benar sekitar sedangkan peneliti 1 dan 2 tidak. Ini tidak terjadi dalam regresi linier, yang dapat dengan mudah ditunjukkan oleh simulasi yang sama (tidak ditampilkan di sini). Saya harus mengakui bahwa hasil ini cukup mengejutkan bagi saya, meskipun masalah ini tampaknya sudah diketahui . Hernán et al. (2011) menyebutnya "keanehan matematis" dan bukannya bias.2[2][3]

Pertanyaan saya:

  1. Jika rasio odds pada dasarnya tidak dapat dibandingkan lintas studi dan model, bagaimana kita bisa menggabungkan hasil berbagai studi untuk hasil biner?
  2. Apa yang bisa dikatakan tentang banyak meta-analisis yang tidak menggabungkan rasio odds dari studi yang berbeda di mana setiap studi mungkin disesuaikan untuk satu set yang berbeda dari kovariat? Apakah mereka pada dasarnya tidak berguna?

Referensi

[1]: Norton EC, Dowd BE, Maciejewski ML (2018): Odds Ratios - Praktek dan Penggunaan Terbaik Saat Ini. JAMA 320 (1): 84-85.

[2]: Norton EC, Dowd BE (2017): Log Peluang dan Interpretasi Model Logit. Layanan Kesehatan Res. 53 (2): 859-878.

[3]: Hernán MA, Clayton D, Keiding N (2011): Paradoks The Simpson terurai. Int J Epidemiol 40: 780-785.

Penyingkapan

Pertanyaan (termasuk kode R) adalah versi modifikasi dari pertanyaan yang diajukan oleh timdisher pengguna pada datamethods .

Kode 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
COOLSerdash
sumber
Mengapa Anda mengatakan ini tidak terjadi dengan regresi linier. Sepertinya Anda baru saja menjelaskan bias variabel yang dihilangkan?
user2879934

Jawaban:

11

Ada sejumlah efek alternatif yang dapat diperoleh dari model regresi logistik yang tidak mengalami masalah yang sama. Salah satu yang paling mudah adalah efek marginal rata-rata dari variabel. Asumsikan model regresi logistik berikut:

ln[p1p]=Xβ+γd

di mana adalah (kasus) oleh (kovariat) matriks, adalah bobot regresi untuk kovariat, adalah variabel perlakuan yang menarik dan adalah pengaruhnya.Xnkβkdγ

Rumus untuk efek marginal rata-rata adalah:d

1ni=1n[(1+e(Xβ+γ))1(1+eXβ)1]

Efek ini akan menjadi perbedaan probabilitas rata-rata dalam hasil antara kelompok perlakuan dan kontrol untuk mereka yang memiliki nilai yang sama pada prediktor lain (lihat Gelman & Hill, 2007, hal. 101).

Sintaks R yang sesuai yang diberikan contoh OP adalah:

dydx_bin <- function(fit, coef) {
  mod.mat <- model.matrix(fit) # Obtain model matrix
  coefs <- coef(fit)
  oth_coefs <- coefs[!(names(coefs) == coef)] # Coefs bar focal predictor
  # Get model matrix excluding focal predictor
  X_nb <- as.matrix(mod.mat[, names(oth_coefs)])
  # Predictions for all data ignoring focal predictor
  Xb_nb <- X_nb %*% oth_coefs
  mean(plogis(Xb_nb + coefs[coef]) - plogis(Xb_nb))
}

Saya memodifikasi sintaks OP untuk menunjukkan bahwa itu tidak terpengaruh oleh variabel mana yang ada dalam model, selama variabel prediktor bunga tidak terkait dengan prediktor lain.

Saya memodifikasi kerangka data hasil sebagai berikut:

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),
  treat_11 = rep(NA, n_sims), treat_21 = rep(NA, n_sims),
  treat_31 = rep(NA, n_sims), treat_41 = rep(NA, n_sims)
)

Dan dalam simulasi, saya menyimpan perbedaan probabilitas rata-rata yang dihitung:

out$treat_11[i] <- dydx_bin(model1, coef_sim)
out$treat_21[i] <- dydx_bin(model2, coef_sim)
out$treat_31[i] <- dydx_bin(model3, coef_sim)
out$treat_41[i] <- dydx_bin(model4, coef_sim)

Dan hasil baru:

colMeans(out)[5:8]
 treat_11  treat_21  treat_31  treat_41 
0.1019574 0.1018248 0.1018544 0.1018642 

Efek yang diperkirakan adalah konsisten terlepas dari spesifikasi model. Dan menambahkan kovariat peningkatan efisiensi seperti halnya model regresi linier:

apply(out[, 5:8], 2, sd)
  treat_11   treat_21   treat_31   treat_41 
0.02896480 0.02722519 0.02492078 0.02493236 

Ada efek tambahan yang dapat dihitung OP seperti rasio probabilitas rata-rata antara kedua kelompok. Perbedaan probabilitas rata-rata yang dihitung di atas tersedia dari paket margin di R dan perintah margin di Stata. Rasio probabilitas rata-rata hanya tersedia di Stata.

Ke pertanyaan lain tentang mempercayai hasil meta-analisis. Untuk satu, arah efeknya seharusnya tidak sia-sia. Masalah dengan rasio odds tidak mempengaruhi tanda koefisien. Jadi, jika sebagian besar penelitian memiliki rasio odds di atas satu, tidak ada alasan untuk meragukan efek ini karena masalah khusus ini.

Adapun perkiraan yang tepat, tidak ada alasan untuk memercayainya. Yang menyenangkan adalah bahwa jika studi konstituen adalah uji coba terkontrol secara acak, maka rasio odds adalah perkiraan konservatif dan hasil aktual bahkan lebih besar. Ini karena efek yang ditunjukkan OP menyusutkan rasio odds terhadap rasio odds. Jadi jika sebagian besar penelitian memiliki rasio odds di atas 1 dan meta-analisis menunjuk ke arah ini, maka ATAU yang sebenarnya setelah semua kovariat yang relevan disesuaikan bahkan lebih besar. Jadi meta-analisis ini tidak sepenuhnya tidak berguna.

Tapi saya lebih suka perkiraan efek lain digunakan dalam meta-analisis. Perbedaan probabilitas rata-rata adalah satu pendekatan, dan ada yang lain.


Gelman, A., & Hill, J. (2007). Analisis data menggunakan regresi dan model multilevel / hierarkis. Cambridge University Press.

Jim hetereteredastik
sumber
1
@COOLSerdash Terima kasih. Ada banyak lagi yang bisa dijelajahi di sini. Itu menjadi lebih menarik ketika rasio odds berasal dari variabel kontinu yang didikotomisasi, terutama jika ada heteroskedastisitas dalam hubungan asli. Lihat jawaban Achim Zeileis untuk pertanyaan ini - stats.stackexchange.com/questions/370876/…
Heteroskedastic Jim
Terima kasih untuk tautannya. Saya harus mengakui bahwa derivasi model logistik menggunakan variabel kontinu laten yang mendasarinya adalah baru bagi saya. Saya berasal dari biostatistik dan sumber-sumber mani di bidang ini tampaknya tidak menyebutkan masalah-masalah ini (misalnya buku oleh Lemeshow & Hosmer "Regresi logistik terapan"). Saya akan memberi Anda hadiah itu secepat mungkin (besok).
COOLSerdash
Saya pikir derivasi di bawah variabel kontinu yang mendasari aneh jika Anda menganggap kesalahan logistik. Jika Anda menganggap kesalahan normal, itu lebih bisa dibenarkan berkat CLT. Jadi untuk regresi probit banyak digunakan dalam ekonometrik, itu adalah derivasi umum. Tetapi jika Anda akan mendikotomisasi variabel kontinu, maka derivasi di bawah kesalahan sangat membantu. Selain itu, derivasi ini memungkinkan seseorang untuk lebih mengeksplorasi model secara umum dan menemukan kebiasaan tertentu. Dan terima kasih atas karunia retrospektif.
Heteroskedastic Jim