Saltar al contenido
Inferencia Causal con Python y Causal ML

Muestreo y Estimación del Efecto Causal con Muestreo Proporcional Estratificado.

Introducción

La inferencia causal se refiere a la identificación, medición y análisis de las relaciones causales entre variables. El muestreo y la estimación del efecto causal son técnicas fundamentales en inferencia causal.

El muestreo proporcional estratificado es una técnica de muestreo que puede mejorar la precisión de la estimación, especialmente cuando la población es heterogénea en términos de algún factor importante.

En el contexto de la inferencia causal, el objetivo es estimar el efecto causal de una variable (por ejemplo, una intervención) sobre otra (por ejemplo, una salida o un resultado). Para hacerlo, se pueden utilizar diferentes tipos de técnicas, incluyendo muestreo aleatorio y muestreo proporcional estratificado.

El muestreo proporcional estratificado implica dividir la población en subgrupos (estratos) y luego muestrear de cada estrato de manera proporcional al tamaño del estrato en la población. A continuación, se puede utilizar la estimación del efecto causal de la intervención en la muestra para inferir el efecto causal en la población.

En resumen, el uso del muestreo proporcional estratificado puede mejorar la precisión de la estimación del efecto causal en presencia de poblaciones heterogéneas. Esto es especialmente importante en inferencia causal, donde la precisión de la estimación es esencial para tomar decisiones basadas en la evidencia.

Resumen

Cuando queremos estimar el efecto causal de una variable en otra, una de las técnicas más comunes es realizar un estudio experimental o un estudio observacional. En ambos casos, necesitamos seleccionar una muestra de nuestra población y medir la variable de interés en cada uno de los individuos de la muestra.

El muestreo proporcional estratificado es una técnica de muestreo que se usa para seleccionar una muestra representativa de una población, especialmente cuando la población presenta heterogeneidad significativa. En este proceso, se divide la población en estratos y, a continuación, se toma una muestra de tamaño proporcional en cada estrato. Este método de muestreo nos permite maximizar la precisión y minimizar el tamaño de la muestra requerida para obtener una estimación precisa de la población.

Una vez que hemos seleccionado nuestra muestra, podemos estimar el efecto causal usando diferentes métodos de inferencia causal, por ejemplo, usando técnicas de regresión o de machine learning. La idea es encontrar una función que relacione la variable causal con la variable de resultado, controlando por otras variables que puedan influir en la relación.

En resumen, el muestreo proporcional estratificado es una técnica de muestreo que nos permite seleccionar una muestra representativa de una población de manera eficiente, lo que a su vez nos permite estimar el efecto causal de una variable en otra con mayor precisión. Aunque el proceso puede parecer complicado, existen librerías en Python como scikit-learn que permiten realizar el muestreo y la estimación causal de manera sencilla.

Aplicación teórica

Principios del Muestreo Proporcional Estratificado

El muestreo proporcional estratificado se basa en principios matemáticos para asegurar que cada estrato de una población esté representado en la muestra de acuerdo con su proporción en la población total. A continuación se presentan los principios matemáticos fundamentales del muestreo proporcional estratificado.

**Definición Matemática del Muestreo Proporcional Estratificado**

1. **División en Estratos**:
   - Sea \( N \) el tamaño total de la población.
   - Sea \( S \) el número de estratos en los que se divide la población.
   - Sea \( N_i \) el tamaño del estrato \( i \) (donde \( i = 1, 2, \ldots, S \)).

2. **Proporción de Estratos**:
   - La proporción del estrato \( i \) en la población total es:
   
     \[
     p_i = \frac{N_i}{N}
     \]

3. **Tamaño de la Muestra**:
   - Sea \( n \) el tamaño total de la muestra que se desea obtener.
   - El tamaño de la muestra \( n_i \) para el estrato \( i \) se determina en proporción al tamaño del estrato en la población. Esto se calcula usando la fórmula:

     \[
     n_i = p_i \times n = \frac{N_i}{N} \times n
     \]

   - Donde \( n_i \) es el número de muestras que se deben tomar del estrato \( i \).

4. **Error de Muestreo y Precisión**:
   - El error estándar de la estimación en un estrato específico puede calcularse para obtener una medida de precisión. Si \( \sigma_i^2 \) es la varianza en el estrato \( i \) y \( n_i \) es el tamaño de la muestra del estrato \( i \), el error estándar para el estimador de la media en el estrato \( i \) se puede calcular como:

     \[
     SE_i = \frac{\sigma_i}{\sqrt{n_i}}
     \]

5. **Estimación de Parámetros Poblacionales**:
   - La media ponderada de la muestra estratificada \( \bar{X} \) se estima usando:

     \[
     \bar{X} = \frac{1}{n} \sum_{i=1}^S n_i \bar{X}_i
     \]

     Donde \( \bar{X}_i \) es la media del estrato \( i \) y \( \bar{X} \) es la media global estimada.

   - La varianza de la estimación de la media estratificada se estima por:

     \[
     \text{Var}(\bar{X}) = \frac{1}{n^2} \sum_{i=1}^S n_i^2 \sigma_i^2
     \]

     Donde \( \sigma_i^2 \) es la varianza dentro del estrato \( i \).

6. **Cálculo del Tamaño de Muestra Total**:
   - Si se busca una precisión deseada con un error máximo permitido \( E \) y una varianza estimada \( \sigma^2 \), el tamaño total de la muestra se puede calcular utilizando la fórmula de error estándar para la media:

     \[
     n = \frac{Z^2 \sigma^2}{E^2}
     \]

     Donde \( Z \) es el valor crítico del nivel de confianza deseado (por ejemplo, 1.96 para un intervalo de confianza del 95%).

Estos principios matemáticos aseguran que el muestreo proporcional estratificado proporcione una muestra representativa que refleje adecuadamente las proporciones de los diferentes estratos en la población. La correcta aplicación de estas fórmulas ayuda a maximizar la precisión y la validez de las estimaciones realizadas a partir de la muestra.

Estimación del Efecto Causal con Muestreo Proporcional Estratificado

La estimación del efecto causal mediante muestreo proporcional estratificado se basa en la idea de que al dividir la población en estratos representativos y tomar muestras proporcionadas a su tamaño, se puede obtener una estimación precisa y ajustada de los efectos causales de interés. Aquí se presentan los fundamentos matemáticos para esta estimación:

Estimación del Efecto Causal

1. Definición del Efecto Causal:
   - El efecto causal de un tratamiento \( T \) sobre un resultado \( Y \) se puede definir como la diferencia en el resultado esperado entre el grupo tratado y el grupo no tratado. Matemáticamente, esto se puede expresar como:

     \[
     \text{Efecto Causal} = E(Y | T = 1) - E(Y | T = 0)
     \]

2. Muestreo Proporcional Estratificado:
   - Dividimos la población en \( S \) estratos según una variable de estratificación \( Z \), y cada estrato \( i \) tiene una proporción \( p_i = \frac{N_i}{N} \) en la población total.
   - El tamaño de muestra para el estrato \( i \) es \( n_i = p_i \times n \), donde \( n \) es el tamaño total de la muestra.

3. Estimación del Efecto Causal en Cada Estrato:
   - Para cada estrato \( i \), estimamos el efecto causal como:

     \[
     \hat{\theta}_i = \hat{E}(Y_i | T = 1) - \hat{E}(Y_i | T = 0)
     \]

   - Donde \( \hat{E}(Y_i | T = 1) \) y \( \hat{E}(Y_i | T = 0) \) son las medias estimadas del resultado \( Y \) en el estrato \( i \) para los grupos tratado y no tratado, respectivamente.

4. Estimación Ponderada del Efecto Causal:
   - La estimación global del efecto causal en la población se obtiene combinando las estimaciones de los estratos ponderadas por la proporción de cada estrato en la población. Esto se calcula como:

     \[
     \hat{\theta} = \sum_{i=1}^S p_i \hat{\theta}_i
     \]

5. Error Estándar y Precisión:
   - El error estándar de la estimación del efecto causal total puede calcularse considerando la varianza dentro de cada estrato. Si \( \sigma_i^2 \) es la varianza del resultado \( Y \) en el estrato \( i \), el error estándar para el efecto causal en el estrato \( i \) se puede estimar como:

     \[
     SE_i = \frac{\sigma_i}{\sqrt{n_i}}
     \]

   - El error estándar global de la estimación del efecto causal se combina usando:

     \[
     SE(\hat{\theta}) = \sqrt{\sum_{i=1}^S p_i^2 \frac{\sigma_i^2}{n_i}}
     \]

6. Ajuste por Confusores:
   - En estudios causales, es importante ajustar por posibles confusores que puedan afectar tanto el tratamiento como el resultado. Esto puede implicar incluir variables adicionales en el análisis o aplicar técnicas de ajuste adicionales.

Al utilizar muestreo proporcional estratificado, se mejora la precisión de la estimación del efecto causal al asegurar que cada estrato esté adecuadamente representado en la muestra, lo que permite obtener una evaluación más precisa y ajustada de los efectos del tratamiento.

Consideraciones Prácticas y Desafíos en el Muestreo Proporcional Estratificado

El muestreo proporcional estratificado es una técnica poderosa en el diseño de muestras para estudios estadísticos, pero también presenta varias consideraciones prácticas y desafíos que deben ser tenidos en cuenta:

1. Definición de Estratos:
   - Importancia: La correcta definición de los estratos es crucial para la efectividad del muestreo. Los estratos deben ser homogéneos internamente pero diferentes entre sí. Si los estratos no reflejan adecuadamente la variabilidad del grupo total, la estimación puede ser sesgada.
   - Desafío: Determinar los criterios adecuados para la estratificación puede ser complejo, especialmente si la variable de estratificación no está claramente definida o si hay múltiples variables relevantes.

2. Tamaño de la Muestra:
   - Importancia: El tamaño de la muestra en cada estrato debe ser suficiente para obtener estimaciones precisas. La proporción del tamaño de muestra en cada estrato debe ser proporcional al tamaño del estrato en la población.
   - Desafío: Puede ser difícil obtener un tamaño de muestra adecuado en todos los estratos, especialmente en estratos con una población pequeña, lo que puede llevar a una alta variabilidad en las estimaciones.

3. Costo y Logística:
   - Importancia: La implementación del muestreo proporcional estratificado puede implicar costos adicionales y complicaciones logísticas debido a la necesidad de organizar la recolección de datos en diferentes estratos.
   - Desafío: Coordinar la recolección de datos en varios estratos puede requerir recursos adicionales y una planificación cuidadosa para asegurar la calidad y consistencia de los datos.

4. Análisis de Datos:
   - Importancia: El análisis de datos provenientes de muestras estratificadas debe tener en cuenta la estructura de estratificación para realizar estimaciones precisas y evaluar el error estándar.
   - Desafío: Los métodos estadísticos deben ser ajustados para reflejar el diseño estratificado, y el análisis debe considerar las posibles correlaciones dentro de cada estrato y entre los estratos.

5. Variabilidad y Representatividad:
   - Importancia: El objetivo del muestreo estratificado es reducir la variabilidad dentro de los estratos y mejorar la precisión de las estimaciones.
   - Desafío: Si la variabilidad dentro de los estratos es alta o si los estratos no están bien definidos, la ventaja de precisión puede ser mínima. Además, los estratos deben ser representativos de la población total para que las conclusiones sean generalizables.

6. Actualización de Estratos:
   - Importancia: En algunos casos, la población puede cambiar con el tiempo, y los estratos definidos inicialmente pueden volverse obsoletos.
   - Desafío: Es necesario revisar y actualizar periódicamente los estratos para reflejar cambios en la población y mantener la relevancia y precisión del muestreo.

7. Manejo de Datos Perdidos:
   - Importancia: Los datos perdidos o incompletos pueden afectar la precisión de las estimaciones.
   - Desafío: Es necesario implementar estrategias para manejar y minimizar la pérdida de datos, especialmente en estratos con tamaño de muestra pequeño.

El muestreo proporcional estratificado, cuando se aplica correctamente, puede mejorar significativamente la precisión y la representatividad de las estimaciones en estudios estadísticos. Sin embargo, es esencial abordar los desafíos prácticos asociados con su implementación para garantizar resultados válidos y confiables.

Aplicación práctica

Importaremos las bibliotecas necesarias:


import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from causalinference import CausalModel
    

Luego, generamos un conjunto de datos simulados usando la función numpy.random.normal:


N = 1000
X1 = np.random.normal(0, 1, N)
X2 = np.random.normal(0, 1, N)
U = np.random.normal(0, 1, N)
Y = 2*X1 + 3*X2 + U
    

A continuación, estratificamos la muestra por los valores de X1 y muestreamos una proporción de 0.5 de cada estrato:


strata = pd.qcut(X1, 2, labels=False)
proportions = strata.value_counts(normalize=True).sort_index()
samples = []
for i in proportions.index:
    sample_size = int(np.round(proportions[i] * N))
    sample_index = np.random.choice(np.where(strata == i)[0], sample_size, replace=False)
    samples.append(sample_index)
sample_index = np.concatenate(samples)
    

Luego, creamos objeto causal que use la muestra estratificada generada:


X = np.column_stack((X1, X2))
causal = CausalModel(Y[sample_index], X[sample_index])
    

Finalmente, estimamos el efecto causal de X1 en Y utilizando la función est_propensity_score_strata() del objeto causal:


causal.est_propensity_scorer()
causal.est_propensity_score_strata()
causal.trim_s()
causal.est_via_blocking()
print(causal.summary_stats)
print(causal.estimates)
    

Esta es una forma práctica de realizar muestreo proporcional estratificado y estimar el efecto causal en Python usando Causal ML.