Python

Evaluación del impacto de la infraestructura: una guía introductoria a diferencias en diferencias con el puente Jamuna

En junio de 1998, un puente de 4.8 kilómetros sobre el río Jamuna conectó a 26 millones de bangladesíes aislados con Daca y redujo a la mitad los costos de flete. Este tutorial reconstruye desde cero, en Python, la evaluación por diferencias en diferencias de ese puente, utilizando como grupo de comparación al hinterland del Padma, una región simétrica que quedó aislada por un río cuyo propio puente no se inició sino hasta 2015. Enseña la lógica 2x2, las tendencias paralelas, los efectos fijos de dos vías, los estudios de eventos y el análisis honesto de sensibilidad sobre luces nocturnas satelitales, y luego aplica la misma maquinaria a las participaciones sectoriales del censo, los rendimientos de arroz y un placebo de bienes públicos. Los dos estimadores doblemente robustos del artículo original se reconstruyen a mano en NumPy y se ejecutan tanto en diff-diff como en pyfixest. Los 122 coeficientes publicados se auditan junto a la replicación, y se documentan por completo los defectos hallados dentro del paquete de Stata distribuido.

Control sintético espacial bayesiano en Python: la Proposición 99 de California con scspill y mlsynth

Una introducción desde cero al método de control sintético en Python, construida sobre el caso de la Proposición 99 de California y organizada en tres etapas: el símplex clásico de Abadie, Diamond y Hainmueller; una distribución previa horseshoe que permite que sean los datos, y no una restricción, los que elijan los estados donantes; y el modelo espacial bayesiano de Sakaguchi y Tagawa, que abandona el supuesto SUTVA sobre el grupo de donantes y pregunta quién más resultó tratado. Cada ecuación se deriva y se vincula con el código que la implementa, usando las librerías scspill y mlsynth. El resultado para California sobrevive a todas las relajaciones del modelo. La afirmación de que el grupo de donantes estaba limpio, no.

La escalera del control sintético en Python: una guía completa de la librería mlsynth con el caso del Brexit

Una introducción cuidadosa a mlsynth, la librería de Python que reúne toda la familia de estimadores de control sintético para una sola unidad tratada detrás de una única interfaz de configuración. Recorremos la escalera completa —diferencias en diferencias, control sintético, control sintético centrado, diferencias en diferencias sintéticas en sus tres variantes, MASC y control sintético aumentado— con una clase de mlsynth por peldaño, explicando qué hace cada opción y dónde los valores por defecto entregan silenciosamente un estimador distinto. El caso de estudio es el referéndum del Brexit de 2016 y su costo para el PIB del Reino Unido.

De diferencias en diferencias a diferencias en diferencias sintéticas: ¿cuánto le costó el Brexit al Reino Unido?

Un recorrido pedagógico por la escalera completa de estimadores de control sintético para una sola unidad tratada: diferencias en diferencias, control sintético, control sintético centrado (DSC), diferencias en diferencias sintéticas (SDID) en sus tres variantes, MASC y control sintético aumentado. Cada método se programa primero desde cero y después se ejecuta con su paquete, sobre el PIB real trimestral de 24 economías de la OCDE entre 1995 y 2020. Incluye hojas de referencia rápida en R, Stata y Python.

Covariables en Diferencias en Diferencias: la prueba de LaLonde en Python

Reproducción de la prueba de LaLonde de Scott Cunningham en Python: en diferencias en diferencias, las covariables solo rescatan el ATT cuando entran en la tendencia contrafactual del grupo de control, recuperando el valor de referencia experimental de $1,794 a partir de un ingenuo $3,621.

Desigualdad regional desde el espacio exterior: predecir el PIB a partir de las luces nocturnas y construir índices de desigualdad en Python

Una réplica integral y didáctica en Python de Lessmann y Seidel (2017): convertir las luces nocturnas satelitales en PIB regional predicho, construir desde cero cinco índices de desigualdad ponderados por población, explorar la dinámica de la desigualdad regional entre países y estimar la curva de Kuznets regional, sus determinantes y una verificación de robustez espacial de Conley (HAC) con PyFixest.

¿Funcionan los parques industriales? Evaluación de la política basada en lugares en Etiopía con diferencias en diferencias

¿Elevan los parques industriales la actividad económica local, y para quién? Una evaluación para principiantes con diferencias en diferencias escalonadas de los parques industriales etíopes en Python, que replica a Huang, Wang y Xu (2026) sobre datos sintéticos calibrados: TWFE y un estudio de eventos con pyfixest, los estimadores modernos de Sun-Abraham, Borusyak/Gardner y Callaway-Sant'Anna más una descomposición de Goodman-Bacon con diff-diff, DiD de sección cruzada repetida y ponderada por encuesta sobre el bienestar de los hogares y el empoderamiento de las mujeres en la DHS, y errores estándar espaciales de Conley.

Modelos dinámicos de datos de panel en Python: del sesgo de Nickell al GMM en sistema

¿Qué tan persistente es el empleo de las empresas? MCO agrupado, efectos fijos, IV de Anderson-Hsiao, GMM en diferencias de Arellano-Bond y GMM en sistema de Blundell-Bond aplicados al clásico panel de 140 empresas del Reino Unido — y cómo los diagnósticos AR(2), de Hansen y de colapso de instrumentos separan la única estimación defendible de cuatro seductoras estimaciones erróneas.

¿Recuperarse mejor? Evaluación del impacto económico del tsunami de Aceh

Evalúe el impacto económico de largo plazo de un desastre natural localizado con inferencia causal en Python. Una replicación para principiantes de Heger y Neumayer (2019) sobre el tsunami de Aceh de 2004, con datos sintéticos calibrados: diferencias en diferencias dinámicas con pyfixest, un estudio de eventos con diff-diff, una respuesta a la dosis de luces nocturnas, control sintético con mlsynth y errores estándar espaciales de Conley.

Doble LASSO en Python: ¿reduce el aborto la delincuencia?

Versión en Python de los tutoriales de Doble LASSO en R y Stata: los mismos datos, los mismos cinco estimadores y una introducción práctica a la biblioteca DoubleML (DoubleMLPLR, DoubleMLIRM y robustez frente al estimador base entre LASSO, RandomForest y XGBoost).