Là phân tích tổng hợp các tỷ lệ cược về cơ bản là vô vọng?


12

Trong một bài báo gần đây Norton et al. (2018) [ 1 ] nói rằng[1]

Các tỷ lệ chênh lệch khác nhau từ cùng một nghiên cứu không thể được so sánh khi các mô hình thống kê dẫn đến ước tính tỷ lệ chênh lệch có các biến giải thích khác nhau vì mỗi mô hình có một hệ số tỷ lệ tùy ý khác nhau. Độ lớn của tỷ lệ chênh lệch từ một nghiên cứu cũng không thể so sánh với độ lớn của tỷ lệ chênh lệch từ một nghiên cứu khác, bởi vì các mẫu khác nhau và thông số kỹ thuật mô hình khác nhau sẽ có các hệ số tỷ lệ tùy ý khác nhau. Một hàm ý nữa là độ lớn của tỷ lệ chênh lệch của một hiệp hội nhất định trong nhiều nghiên cứu không thể được tổng hợp trong một phân tích tổng hợp.

Một mô phỏng nhỏ minh họa điều này (mã R nằm ở cuối câu hỏi). Giả sử mô hình đúng là:

tôiogTôit(yTôi)= =1+đăng nhập(2)x1Tôi+đăng nhập(2,5)x2Tôi+đăng nhập(3)x3Tôi+0x4Tôi
Hãy tưởng tượng thêm rằng giống nhau dữ liệu được tạo ra bởi mô hình trên được phân tích bởi bốn nhà nghiên cứu khác nhau bằng cách sử dụng hồi quy logistic. Nhà nghiên cứu 1 chỉ bao gồmx1 là đồng biến, nhà nghiên cứu 2 bao gồm cảx1x2 và vv. Các ước tính mô phỏng trung bình của tỷ lệ cược chox1 trong bốn nhà nghiên cứu là:

res_1    res_2    res_3    res_4 
1.679768 1.776200 2.002157 2.004077

Rõ ràng là chỉ có các nhà nghiên cứu 3 và 4 có được tỷ lệ cược chính xác là khoảng 2 trong khi các nhà nghiên cứu 1 và 2 thì không. Điều này không xảy ra trong hồi quy tuyến tính, có thể dễ dàng hiển thị bằng một mô phỏng tương tự (không được hiển thị ở đây). Tôi phải thú nhận rằng kết quả này khá bất ngờ đối với tôi, mặc dù vấn đề này dường như đã được biết đến [ 2 ] . Hernán et al. (2011) [ 3 ] gọi đây là "sự kỳ quặc toán học" thay vì sai lệch.[2][3]

Những câu hỏi của tôi:

  1. Nếu tỷ lệ chênh lệch về cơ bản là không thể so sánh giữa các nghiên cứu và mô hình, làm thế nào chúng ta có thể kết hợp các kết quả của các nghiên cứu khác nhau cho kết quả nhị phân?
  2. Có thể nói gì về vô số phân tích tổng hợp đã kết hợp tỷ lệ chênh lệch từ các nghiên cứu khác nhau trong đó mỗi nghiên cứu có thể điều chỉnh cho một tập hợp số khác nhau? Chúng thực chất là vô dụng?

Người giới thiệu

[1]: Norton EC, Dowd BE, Maciejewski ML (2018): Tỷ lệ cược - Thực tiễn và sử dụng tốt nhất hiện nay. JAMA 320 (1): 84-85.

[2]: Norton EC, Dowd BE (2017): Đăng nhập tỷ lệ cược và diễn giải các mô hình logit. Phục vụ sức khỏe Res. 53 (2): 859-878.

[3]: Hernán MA, Clayton D, Keiding N (2011): Nghịch lý của Simpson được làm sáng tỏ. Int J Epidemiol 40: 780-785.

Tiết lộ

Câu hỏi (bao gồm mã R) là phiên bản sửa đổi của câu hỏi được đặt bởi bộ đếm thời gian của người dùng trên bảng dữ liệu .

Mã 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

Câu trả lời:


11

Có một số hiệu ứng thay thế mà người ta có thể rút ra từ mô hình hồi quy logistic không gặp phải vấn đề tương tự. Một trong những cách dễ nhất là hiệu ứng cận biên trung bình của biến. Giả sử mô hình hồi quy logistic sau:

ln[p1-p]= =Xβ+γd

Xnkβkdγ

d

1nΣTôi= =1n[(1+e-(Xβ+γ))-1-(1+e-Xβ)-1]

Hiệu ứng này sẽ là sự khác biệt xác suất trung bình trong kết quả giữa nhóm điều trị và nhóm đối chứng cho những người có cùng giá trị trên các yếu tố dự đoán khác (xem Gelman & Hill, 2007, trang 101).

Cú pháp R tương ứng được đưa ra ví dụ của OP sẽ là:

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))
}

Tôi đã sửa đổi cú pháp của OP để chứng minh rằng nó không bị ảnh hưởng bởi biến nào trong mô hình, miễn là biến quan tâm của người dự đoán không liên quan đến các yếu tố dự đoán khác.

Tôi đã sửa đổi khung dữ liệu kết quả như vậy:

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)
)

Và trong mô phỏng, tôi đã lưu chênh lệch xác suất trung bình được tính:

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)

Và kết quả mới:

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

Hiệu quả ước tính là phù hợp bất kể đặc điểm kỹ thuật mô hình. Và thêm các đồng biến cải thiện hiệu quả như với mô hình hồi quy tuyến tính:

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

Có những hiệu ứng bổ sung mà OP có thể tính toán như tỷ lệ xác suất trung bình giữa hai nhóm. Chênh lệch xác suất trung bình được tính toán ở trên có sẵn từ gói lề trong lệnh R và lề trong Stata. Tỷ lệ xác suất trung bình chỉ có sẵn trong Stata.

Lên câu hỏi khác về việc tin tưởng kết quả phân tích tổng hợp. Đối với một, hướng của hiệu ứng không nên vô dụng. Vấn đề với tỷ lệ cược không ảnh hưởng đến dấu hiệu của các hệ số. Vì vậy, nếu một số lượng lớn các nghiên cứu có tỷ lệ chênh lệch trên một, không có lý do để nghi ngờ hiệu ứng này vì vấn đề đặc biệt này.

Đối với ước tính chính xác, không có lý do để tin điều đó. Điều tốt đẹp là nếu các nghiên cứu thành phần là các thử nghiệm ngẫu nhiên có kiểm soát, thì tỷ lệ chênh lệch là ước tính bảo thủ và kết quả thực tế thậm chí còn lớn hơn. Điều này là do hiệu ứng OP thể hiện đã thu nhỏ tỷ lệ cược về một. Vì vậy, nếu phần lớn các nghiên cứu có tỷ lệ chênh lệch trên 1 và phân tích tổng hợp đang chỉ theo hướng này, thì HOẶC thực tế một khi tất cả các hiệp phương sai có liên quan được điều chỉnh thậm chí còn lớn hơn. Vì vậy, các phân tích tổng hợp này không hoàn toàn vô dụng.

Nhưng tôi muốn sử dụng các ước tính hiệu ứng khác trong phân tích tổng hợp. Sự khác biệt xác suất trung bình là một cách tiếp cận, và có những cách khác.


Gelman, A., & Hill, J. (2007). Phân tích dữ liệu bằng mô hình hồi quy và mô hình đa cấp / phân cấp. Nhà xuất bản Đại học Cambridge.


1
@COOLSerdash Cảm ơn. Có quá nhiều thứ để khám phá ở đây. Nó thậm chí còn thú vị hơn khi tỷ lệ chênh lệch đến từ một biến liên tục được phân đôi, đặc biệt là nếu có sự không đồng nhất trong các mối quan hệ ban đầu. Xem câu trả lời của Achim Zeileis cho câu hỏi này - stats.stackexchange.com/questions/370876/ mẹo
Heteroskedastic Jim

Cảm ơn các liên kết. Tôi phải thú nhận rằng việc tạo ra mô hình logistic bằng cách sử dụng một biến liên tục tiềm ẩn tiềm ẩn là mới đối với tôi. Tôi đến từ thống kê sinh học và các nguồn tinh dịch trong lĩnh vực này dường như không đề cập đến những vấn đề này (ví dụ như cuốn sách của Lemeshow & Hosmer "Hồi quy logistic ứng dụng"). Tôi sẽ thưởng cho bạn tiền thưởng ngay khi tôi có thể (ngày mai).
COOLSerdash

Tôi nghĩ rằng phái sinh dưới biến liên tục cơ bản là lạ nếu bạn giả sử lỗi logistic. Nếu bạn giả sử các lỗi bình thường, điều đó hợp lý hơn nhờ CLT. Vì vậy, đối với hồi quy probit được sử dụng rất nhiều trong kinh tế lượng, đó là một dẫn xuất phổ biến. Nhưng nếu bạn sẽ phân đôi một biến liên tục, thì đạo hàm theo lỗi là rất hữu ích. Hơn nữa, sự phát sinh này cho phép người ta khám phá tốt hơn mô hình nói chung và khám phá những điều kỳ quặc nhất định. Và cảm ơn cho tiền thưởng hồi cứu.
Heteroskedastic Jim
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.