15 votos

¿Es el meta-análisis de los odds ratios esencialmente desesperado?

En un trabajo reciente de Norton et al. (2018)$^{[1]}$ estado que

Los diferentes índices de probabilidades de que el mismo estudio no se puede comparar cuando el modelos estadísticos que resultan en odds ratio estimaciones tienen diferentes variables explicativas, ya que cada modelo tiene diferentes arbitraria factor de escala. Ni la magnitud de la odds ratio de un estudio ser comparado con la magnitud de la odds ratio de otro estudio, debido a que los diferentes muestras y diferentes especificaciones de los modelos se han diferentes arbitraria de los factores de escala. Una mayor implicación es que el las magnitudes de los odds-ratios de una asociación dada en múltiples estudios no pueden ser sintetizados en un meta-análisis.

Una pequeña simulación de lo ilustra (R código está en el fondo de la cuestión). Supongamos que el modelo verdadero es: $$ \mathrm{logit}(y_{i})=1 + \log(2)x_{1} + \log(2.5)x_{2} + \log(3)x_{3i} + 0x_{4i} $$ Imagina, además, que los mismos datos generados por el modelo de arriba es analizado por cuatro diferentes investigadores mediante una regresión logística. Investigador 1 sólo incluye a$x_{1}$ como covariable, investigador 2 incluye el $x_{1}$ e $x_{2}$ y así sucesivamente. El promedio simulado estimaciones de la odds ratio para $x_{1}$ de los cuatro investigadores fueron:

res_1    res_2    res_3    res_4 
1.679768 1.776200 2.002157 2.004077

Es evidente que sólo los investigadores 3 y 4 de obtener la correcta odds ratio de alrededor de $2$ mientras que los investigadores 1 y 2 no. Esto no sucede en la regresión lineal, que puede ser fácilmente demostrado por un análogo de simulación (no se muestra aquí). Debo confesar que este resultado fue bastante sorprendente para mí, aunque este problema parece ser muy conocida$^{[2]}$. Hernán et al. (2011)$^{[3]}$ llamar a esto un "matemático rareza" en lugar de un sesgo.

Mis preguntas:

  1. Si el cociente de probabilidades son, básicamente, incomparable a través de los estudios y modelos, ¿cómo podemos combinar los resultados de diferentes estudios para los resultados binarios?
  2. ¿Qué se puede decir acerca de las innumerables meta-análisis que hizo combinar las probabilidades de ocurrencia de los diferentes estudios donde cada estudio posiblemente ajustado para un conjunto de covariables? Son esencialmente inútiles?

Referencias

[1]: Norton CE, Dowd SER, Maciejewski ML (2018): Odds Ratios Actual de las Mejores Prácticas y el Uso. JAMA 320(1): 84-85.

[2]: Norton CE, Dowd SER (2017): las Probabilidades de Registro y la Interpretación de los Modelos Logit. Health Serv Res. 53(2): 859-878.

[3]: Hernán MA, Clayton D, Keiding N (2011): Los Simpson de la paradoja de descifrado. Int J Epidemiol 40: 780-785.

La divulgación

La pregunta (incluyendo el código R) es una versión modificada de una pregunta planteada por el usuario timdisher en datamethods.

R código de

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

14voto

user162986 Puntos 41

Hay una serie de alternativas a los efectos que se pueden derivar del modelo de regresión logística que no sufren de este mismo problema. Uno de los más fáciles es el promedio del efecto marginal de la variable. Supongamos el siguiente modelo de regresión logística:

\begin{equation} \ln\Bigg[\frac{p}{1-p}\Bigg]=X\beta + \gamma d \end{equation}

donde $X$ es $n$ (casos) por $k$ (covariables) de la matriz, $\beta$ son los pesos de regresión para la $k$ covariables, $d$ es el tratamiento de la variable de interés y $\gamma$ es su efecto.

La fórmula para el promedio del efecto marginal de $d$ sería:

\begin{equation} \frac{1}{n}\sum_{i=1}^n\Bigg[{\Big(1+e^{-(X\beta + \gamma)}\Big)^{-1} - \Big(1+e^{-X\beta}\Big)^{-1}}\Bigg] \end{equation}

Este efecto sería la probabilidad promedio de la diferencia en el resultado entre el tratamiento y grupo de control para aquellos que tienen los mismos valores en el resto de los predictores (ver Gelman & Hill, 2007, pág. 101).

El correspondiente R sintaxis OP ejemplo sería:

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

He modificado OP sintaxis para demostrar que no está afectado por las variables que están en el modelo, siempre que el predictor de la variable de interés no está relacionado con otros predictores.

He modificado los resultados del marco de datos así:

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

Y dentro de la simulación, he guardado la calculada probabilidad promedio de la diferencia:

out

Y los nuevos resultados:

$treat_11[i] <- dydx_bin(model1, coef_sim)
out$

El efecto estimado fue coherente, independientemente de la especificación del modelo. Y la adición de las covariables mejora de la eficiencia como con el modelo de regresión lineal:

treat_21[i] <- dydx_bin(model2, coef_sim)
out

Hay otros efectos que el OP puede calcular como el promedio de la ratio de probabilidad entre los dos grupos. La probabilidad promedio de la diferencia calculada anteriormente está disponible desde los márgenes paquete en R y los márgenes de comandos de Stata. El promedio de la ratio de probabilidad sólo está disponible en Stata.

Sobre la otra pregunta acerca de confiar en los meta-análisis de los resultados. Para uno, la dirección del efecto no debe ser inútil. El problema con la odds ratio no afecta el signo de los coeficientes. Así que si una mayor parte de los estudios tienen una odds ratio por encima de uno, no hay ninguna razón para dudar de este efecto debido a este problema en particular.

Como para la estimación exacta, no hay ninguna razón para creer. Lo bueno es que si constituyente de estudios ensayos controlados aleatorios, entonces las probabilidades de ocurrencia son estimaciones conservadoras y los resultados reales son aún mayores. Esto es debido a que el efecto OP demostrado reduce las probabilidades de ocurrencia hacia uno. Así que si la mayor parte de los estudios tienen una odds ratio superior a 1 y el meta-análisis es que apunta en esta dirección, entonces la real O una vez que todas las covariables son ajustados para es aún mayor. Así que estos meta-análisis no son completamente inútiles.

Pero prefiero otras estimaciones del efecto de ser utilizado en el meta-análisis. La probabilidad promedio de la diferencia es un enfoque, y hay otros.


Gelman, A., & Hill, J. (2007). El análisis de los datos mediante regresión multinivel y/modelos jerárquicos. Cambridge University Press.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X