Skip to content
Statistical RethinkingStatistical Rethinking

5.2 Relación enmascarada

A veces una asociación real está oculta porque una variable confusora suprime la relación. Añadir la variable correcta al modelo puede revelar un efecto que estaba enmascarado en los datos brutos. Esto es lo opuesto a una asociación espuria.

5.2.1 El ejemplo de la energía de la leche

El ejemplo clásico usa datos sobre el contenido energético de la leche a través de especies de primates. La pregunta: ¿la masa corporal (MM) afecta la energía de la leche (KK)? La asociación bivariada es débil, pero añadir el tamaño del cerebro (BB) revela un fuerte efecto negativo de la masa.

La historia causal:

M→KM \rightarrow K (negativo: animales más grandes producen leche menos energética) M→BM \rightarrow B (positivo: animales más grandes tienen cerebros más grandes) B→KB \rightarrow K (positivo: cerebros más grandes requieren leche más energética)

El efecto de MM sobre KK está enmascarado porque MM tiene tanto un efecto directo negativo sobre KK como un efecto indirecto positivo a través de BB. El efecto total es casi cero, pero el efecto directo es fuertemente negativo.

# Simulate the milk energy data
set.seed(42)
n_species <- 30

# Body mass (log scale)

mass <- rnorm(n_species, mean = 3, sd = 1)

# Brain size is positively influenced by mass

brain <- 0.7 * mass + rnorm(n_species, sd = 0.5)

# Milk energy: negatively influenced by mass, positively by brain

energy <- -0.5 _ mass + 0.6 _ brain + rnorm(n_species, sd = 0.3)

# Standardize

mass_s <- (mass - mean(mass)) / sd(mass)
brain_s <- (brain - mean(brain)) / sd(brain)
energy_s <- (energy - mean(energy)) / sd(energy)

# Bivariate: energy ~ mass

m_biv <- lm(energy_s ~ mass_s)
cat("Bivariate (energy ~ mass):\n")
cat(" beta_mass:", round(coef(m_biv)[2], 3), "\n")

# Multivariate: energy ~ mass + brain

m_multi <- lm(energy_s ~ mass_s + brain_s)
cat("\nMultivariate (energy ~ mass + brain):\n")
cat(" beta_mass:", round(coef(m_multi)[2], 3), "\n")
cat(" beta_brain:", round(coef(m_multi)[3], 3), "\n")

cat("\nThe mass effect is masked in the bivariate model\n")
cat("but revealed in the multivariate model.\n")
Click Run to execute this code in your browser with WebR

5.2.2 Por qué la relación está enmascarada

El coeficiente bivariado de la masa sobre la energía es casi cero porque el efecto total combina un efecto directo negativo y un efecto indirecto positivo:

efecto total=efecto directo+efecto indirecto\text{efecto total} = \text{efecto directo} + \text{efecto indirecto} efecto total=(−0.5)+(0.7×0.6)=−0.5+0.42=−0.08\text{efecto total} = (-0.5) + (0.7 \times 0.6) = -0.5 + 0.42 = -0.08

El camino indirecto (M→B→KM \rightarrow B \rightarrow K) casi cancela el camino directo (M→KM \rightarrow K). Pero cuando incluimos el tamaño del cerebro en la regresión, bloqueamos el camino indirecto, y el efecto directo se revela.

# Visualize the masked relationship
par(mfrow = c(1, 3))

# Bivariate: energy vs mass (weak)

plot(mass_s, energy_s, pch = 16, col = "steelblue",
xlab = "Body mass (standardized)", ylab = "Milk energy (standardized)",
main = sprintf("Bivariate: beta = %.3f", coef(m_biv)[2]))
abline(m_biv, lwd = 2, col = "firebrick")

# Bivariate: energy vs brain (strong)

m_brain <- lm(energy_s ~ brain_s)
plot(brain_s, energy_s, pch = 16, col = "steelblue",
xlab = "Brain size (standardized)", ylab = "Milk energy (standardized)",
main = sprintf("Bivariate: beta = %.3f", coef(m_brain)[2]))
abline(m_brain, lwd = 2, col = "firebrick")

# Coefficient comparison

barplot(c(coef(m_biv)[2], coef(m_multi)[2]),
names.arg = c("Bivariate", "Multivariate"),
col = c("steelblue", "firebrick"), border = "white",
main = "Mass effect: masked vs revealed",
ylab = "Coefficient")
abline(h = 0, lty = 2)

par(mfrow = c(1, 1))
Click Run to execute this code in your browser with WebR

5.2.3 El grafo causal

La relación enmascarada surge porque el grafo causal tiene dos caminos de la masa a la energía:

  1. Camino directo: M→KM \rightarrow K (negativo)
  2. Camino indirecto: M→B→KM \rightarrow B \rightarrow K (positivo)

El efecto total (coeficiente bivariado) es la suma de ambos caminos. El efecto directo (coeficiente multivariado) bloquea el camino indirecto al condicionar sobre BB.

Rethinking

Añadir variables puede revelar u ocultar efectos. La relación enmascarada muestra que añadir una variable puede aumentar el efecto aparente de otra variable, mientras que la asociación espuria muestra que añadir una variable puede disminuirlo. La dirección depende del grafo causal. Por esto la selección del modelo debe guiarse por razonamiento causal, no por significancia estadística o procedimientos automatizados. Una variable que parece irrelevante en un modelo bivariado puede ser crucial en un modelo multivariado, y viceversa.

Resumen de la Sección 5.2

  • Una relación enmascarada ocurre cuando un confusor suprime la asociación entre un predictor y un resultado.
  • El efecto total combina efectos directos e indirectos, que pueden cancelarse entre sí.
  • Añadir el confusor al modelo bloquea el camino indirecto y revela el efecto directo.
  • El ejemplo de la energía de la leche muestra que la masa corporal tiene un fuerte efecto directo negativo sobre la energía de la leche, enmascarado por el camino indirecto positivo a través del tamaño del cerebro.
  • La selección del modelo debe guiarse por razonamiento causal, no por significancia estadística.