Del DAG al método · DiD revolution · Lab L4 pair programming · Gancho Mona Lisa + 4 Sprints + 🏁 H3 asincrónico
Universidad EAFIT · Escuela de Finanzas, Economía y Gobierno
19 de mayo de 2026
Unidad 6 — Métodos modernos asistidos por IA
Sesión 6 · Martes 19/05 · 3h online · 18:00–21:00
Nota
Pregunta guía: ¿Qué método responde mi pregunta de identificación dado mi DAG H2 · y cómo escribo código auditable con IA como copiloto?
Lo que se lleva esta sesión:
De la hipótesis que el DAG H2 dibujó · al método que te permite estimarla bien

Esto es lo que tu DAG H2 dice que querés estimar.
Tu hipótesis primaria — sea causal (4 elementos · dirección · magnitud · mecanismo · condicionalidad) o de otro tipo (descriptiva · comparativa · mecanística · exploratoria) — define el rostro que perseguís.
→ Antes de elegir método: ¿saben qué hipótesis están persiguiendo?

Pero los datos llegan así.
Panel trimestral en lugar de mensual · censo cada 4 años en lugar de continuo · municipio en lugar de barrio.
→ La data limita lo que el método puede ver. El rostro existe — pero acá no se distingue.

Pero los datos tienen tratamiento escalonado.
Y vos aplicaste TWFE clásico — peinado de 2026 sobre cuadro de 1503.
→ La especificación tiene que empatar con la estructura del tratamiento. Misma data, distinta cara.

Pero los datos tienen muchas variables.
Y vos “le metiste todos los controles que tenías, por las dudas”.
→ El DAG decide qué entra al modelo. No la intuición del investigador.

Esto es lo que SÍ podés estimar.
Cuando datos · DAG · método empatan, llegás a un coeficiente identificable · defendible · replicable.
→ Esta es la pregunta que defientdes con la que te defendés.
El método NO se elige.
El método depende.
| Depende de… | Decisión que fija |
|---|---|
| Tus datos | Granularidad temporal · balance · missings · variación |
| Tu DAG (H2) | Qué backdoor cerrar · qué controlar · qué ignorar |
| Tu pregunta | ATT promedio · heterogeneidad · mecanismo · contrafactual |
| La estructura del tratamiento | TWFE clásico · staggered · synthetic · IV · RDD |
Hoy aprendemos cómo se decide. No con voto · con criterio. Sprint 1 lo abre.
Regla del aula: Modo AIAS dominante hoy = 4 (Full Support · auditada). La IA escribe; vos auditás línea por línea. Audit log denso. Sin audit no hay entrega.
Consejo
Lecturas hoy: (Roth et al., 2023) (★★★ · sec. 6) · (Goodman-Bacon, 2021) (teorema) · (Callaway & Sant’Anna, 2021) · (de Chaisemartin & D’Haultfœuille, 2020) · (Banerjee et al., 2020) (PAP moderado) · (Brodeur et al., 2020) (★★★ Replication Court) · (Ludwig et al., 2025) (LLMs como datos).
Anteanoche entregaron H1 (PRON · OG · OE). Anoche cerraron Sprint B con H2 (Evidence Map + DAG + hipótesis). Hoy abrimos Sprint C — DESIGN & DEFENSE: el DAG ya eligió el método; ahora hay que escribir el código que ese DAG implica y defender la identificación contra el escrutinio de pares.
10 JC · 10 Act · Check del DAG H2 + ¿qué método sospechás? + montar proyecto IA² (4 espacios)
Consejo
El método no se elige por moda — se elige por:
Advertencia
Trampa pedagógica: “voy a usar DiD porque es lo que aprendí”. ❌ Eso es la herramienta determinando la pregunta. El DAG decide; vos sólo defendés esa decisión.
** El DAG quedó dibujado. Hoy lo traducimos en 3 pasos a un método de identificación auditable.** Cada arista del DAG no es decoración — es una hipótesis verificable que el método debe poder testear.
X → Y con dirección + signo esperadoZ identificadosConsejo
Linaje epistemológico (resumen brutal · 180 años):
| Año | Aporte | Hoy se ve como |
|---|---|---|
| 1843 Mill · A System of Logic | Canon positivo + negativo + método de la diferencia | Lógica del contrafactual · counterfactual reasoning |
| 2000 Pearl · Causality | DAGs + do-calculus + backdoor criterion | Formalización del canon de Mill |
| 2021 Goodman-Bacon | TWFE decomposition · pesos negativos | Stress test del método cuando el DAG es panel staggered |
→ El DAG no es invento de moda · es Mill 1843 con sintaxis 2000 y diagnóstico 2021.
Advertencia
Causalidad ≠ correlación (recordatorio operativo):
“Las implicaciones causales provienen del razonamiento conceptual (teoría) en lugar de la evidencia empírica.”
→ El DAG es ese razonamiento conceptual hecho explícito. El método sólo testea lo que el DAG ya dijo que es testeable. Si tu método “descubre” causalidad que el DAG no implicaba → estás haciendo p-hacking, no inferencia.
Inversión de roles desde el Lab L3 (anoche · DAG):
Modo AIAS dominante hoy:
(Perkins et al., 2024): modo 4 = operativa auditada. La IA produce salida útil; el humano se queda con la responsabilidad de la decisión. Si la IA escribió tu regresión y vos no podés explicar cada línea → ese código no es tuyo.
Antes de escribir una línea de código con IA, el proyecto necesita 4 espacios bien definidos. La carpeta no es organización personal — es la interfaz que tu IA va a leer cada vez que la invoques.
tesis/ ├── data/ ⛔ gitignored │ ├── raw/ │ └── processed/ ├── code/ 📜 numerado │ ├── 01_clean.R │ ├── 02_did.R │ └── 99_robust.R ├── output/ 📊 regenerable ├── audit/ 📝 L1–L5 ├── prompts/ 💬 reproducible ├── docs/ 📖 PAP · DAG · README └── Makefile
CLAUDE.md / .cursorrules en raízDECISIONS.md · log alto niveldocs/)audit/L4-pair-programming.md (línea por línea)audit/decisions.md (giros metodológicos)audit/AIAS-report.md (modo por tarea)audit/errors-IA.md (≥1 error detectado)set.seed(2026) en cada scriptsessionInfo() / renv.lock / requirements.txtMakefile: make all reproduce todo.gitignore: data/raw/*, .env, .DS_StorePAP.mdTarea concreta (10 min · ahora):
git init en tesis-apellido/.gitignore + Makefile vacío.CLAUDE.md / .cursorrules con 6 secciones:
audit/L4-pair-programming.md con el encabezado.git commit -m "setup: project structure + AI memory".Advertencia
Por qué importa cada espacio:
Consejo
Plantillas listas: materiales/CLAUDE-template.md · materiales/Makefile-template · materiales/plantilla-PAP-moderado.md. Copialas, no las reinventes.
Regla operativa del aula: la IA es tu colaborador, no tu motor. Un colaborador necesita contexto persistente (memoria) y rastros de trabajo (audits). El proyecto que armás ahora — esos 4 espacios — es lo que distingue una tesis defendible de una “cosa que hizo ChatGPT por mí”.
45 JC · 15 Act · 60 min · Endogeneidad → estrategias → 6 patrones DAG · cuali/mixto · 4 ejemplos · métodos al final
Inversión pedagógica: la mayoría de cursos enseña “DiD vs IV vs RDD” como menú de herramientas. Acá invertimos: tu DAG decide la estrategia; la estrategia tiene 1-3 implementaciones; el nombre del método es lo último que se decide.
El problema fundamental (Holland 1986):
Nadie observa simultáneamente Y(1) e Y(0) para la misma unidad. El contrafactual no existe en los datos.
Identificar = recuperar E[Y(1) − Y(0)] (el ATT) a partir de datos donde solo vemos uno de los dos estados por unidad.
La pregunta operativa de Pearl:
Si dos unidades tienen el mismo valor de todos los confounders relevantes · pero distinto D · ¿por qué difieren en D?
Esa “razón por la que difieren” es la fuente de variación que identifica el efecto.
Consejo
Identificación ≠ estimación.
Si la identificación falla, la estimación más fina decora una pregunta sin respuesta.
Advertencia
Pregunta-control para tu DAG H2: mirando tu diagrama · ¿qué supuesto defendés para que el ATT esté identificado? Marcalo con un círculo. Eso es lo que vas a tener que defender el sábado 23/05.
Definición técnica:
D es endógeno si
cov(D, ε) ≠ 0en el modeloY = β·D + ε.
Cuando esto pasa, β̂_OLS NO recupera el efecto causal — recupera una mezcla de causa + ruido confundido.
Las 4 fuentes clásicas de endogeneidad:
| # | Fuente | Mini-DAG |
|---|---|---|
| 1 | Variable omitida (OVB) Existe U no observado que causa D y Y simultáneamente. |
U → D, U → Y |
| 2 | Causalidad reversa Y también causa D · simultaneidad. |
D → Y, Y → D |
| 3 | Selección Quién recibe D no es aleatorio · self-selection o sample selection. |
U → S → muestra |
| 4 | Error de medida en D D se mide con ruido · attenuation bias. |
D ≠ D* observado |
Advertencia
El test mental de 30 segundos: mirá tu pregunta H1.
Si respondiste SÍ a alguna, OLS sin identificación está roto para tu pregunta.
Consejo
Por qué tu DAG H2 importa: U5 te enseñó a dibujar la endogeneidad. Cada arista no-bloqueada hacia D desde un confounder ES la endogeneidad. La estrategia de identificación (próximo slide) es cómo se rompe esa arista.
La idea central (Angrist-Pischke): una estrategia de identificación es una forma de aislar variación exógena de D — variación que existe independientemente de los confounders no observados.
| Estrategia | La idea | Endogeneidad que cierra | Supuesto clave |
|---|---|---|---|
| A · Conditioning | Comparo unidades con mismo valor de X observable | Solo tipo 1 si X observable | Selection on observables · backdoor cerrable |
| B · Instrumento (IV) | Uso Z que mueve D pero NO afecta Y directamente | Cierra tipos 1, 2 y 3 vía Z | Exclusion restriction · Z ⊥ Y | D, U |
| C · Discontinuidad (RDD) | Comparo unidades casi iguales a ambos lados de un umbral | Tipo 1 localmente · "as if random" | Continuidad de Y(0) en el umbral · no manipulación |
| D · Variación temporal (DiD) | Comparo cambio en tratados vs cambio en controles | Tipo 1 si U es time-invariant | Parallel trends · sin shocks diferenciados |
El insight clave: cada estrategia explota un tipo distinto de variación para resolver un tipo distinto de endogeneidad. Conditioning asume que el confounder es observable ((Imbens, 2015) · (Oster, 2019)). IV asume que existe una palanca exógena ((Angrist et al., 1996) LATE · (Andrews et al., 2019) weak IV). RDD asume que un umbral institucional genera comparabilidad local ((Lee & Lemieux, 2010) · (Cattaneo et al., 2020)). DiD asume que los confounders no se mueven en el tiempo ((Roth et al., 2023)). Ninguna estrategia es universalmente mejor — el DAG H2 decide cuál aplica.
→ Próximo slide: cada estrategia tiene 1-3 implementaciones canónicas. Esos son los 6 patrones DAG + los métodos asociados. Lectura puente PO ↔︎ DAG: (Imbens, 2020) (JEL · Nobel 2021) — “the best work uses both”.
| # | Patrón DAG | Estructura mínima | Estrategia | Ejemplo típico |
|---|---|---|---|---|
| 1 | Randomización | R → D → Y sin backdoor |
Comparar medias entre brazos | RCT microcrédito · evaluación experimental |
| 2 | Selección sobre observables | D ← X → Y, X observable |
Condicionar en X (adjustment set) | Educación → ingreso controlando background familiar |
| 3 | Instrumento | U → D, U → Y, Z → D, Z ⊥ Y|D,U |
Explotar variación exógena Z | Distancia a universidad como instrumento de educación |
| 4 | Discontinuidad | D = 1[X ≥ c] |
Comparar alrededor del umbral c | Cesárea por umbral de peso · beca por puntaje |
| 5 | Variación temporal ⭐ | Panel · D se enciende en t* para algunos | Diferencias en diferencias (DiD) | 4G en Catatumbo · reforma educativa por cohortes |
| 6 | Alta dimensión observables | D ← X₁..Xₚ → Y, p grande |
ML para nuisance functions | Tratamiento heterogéneo en RCT grandes · políticas multinivel |
Regla operativa: identificá tu DAG H2 con uno de estos 6 patrones (o una combinación). El patrón 5 (variación temporal) es el más común en tesis MAE y el más subtle — le dedicamos un slide entero más adelante. Pero antes: no toda tesis cabe en cuanti — el DAG también vive en cuali y mixto. Ese es el próximo slide.
Lecturas canónicas modernas por patrón (núcleo · todas con ficha):
El DAG no es exclusivo de cuanti. Cuando tu pregunta es de mecanismo · proceso · casos · contexto, el DAG sigue siendo la herramienta — pero su función cambia.
Patrón A · Cualitativo · Process Tracing (Beach & Pedersen, 2019)
→ Cuándo aplica: tu pregunta es “¿cómo opera el proceso?” · no “¿cuánto?”.
Patrón B · Mixto · Joint Display (Fetters, 2020) · (Creswell, 2014)
→ Cuándo aplica: - Cuanti dio efecto significativo · necesitás explicar por qué. - Cuanti dio null · necesitás explorar si fue ausencia o ruido. - Confounders no observables que cuanti no puede cerrar → cuali los identifica. - Heterogeneidad por contexto que ethnography revela.
Si tu hipótesis primaria (de U5) es mecanística, exploratoria o el patrón cuanti no aplica limpio → ver el recurso asincrónico Métodos mixtos modernos (~90 min). Cubre process tracing · QCA · LLM-aided coding · joint displays · 4 diseños Creswell-Plano Clark · checklist de auditoría · y la conexión explícita con el DAG H2. Lectura para martes 20/05 si tu tesis va por ese lado.
Por qué este patrón merece atención especial:
El teorema demoledor de Goodman-Bacon 2021 (Goodman-Bacon, 2021):
Cuando hay tratamiento escalonado (distintos grupos tratados en distintos momentos) + efectos heterogéneos, el coeficiente TWFE es un promedio ponderado de comparaciones 2×2 con pesos negativos.
→ Implicación práctica: TWFE puede dar el signo equivocado de un efecto real.
did en R.DIDmultiplegt en Stata/R.Advertencia
Regla dura del aula: si tu DAG implica staggered DiD → NUNCA entregues TWFE sin haber corrido al menos 1 estimador moderno como cross-check. Brodeur 2020 (Brodeur et al., 2020) mostró que IV/DiD son los métodos más p-hackeados — el cross-check es la disciplina mínima.
Los otros 5 patrones cuanti (1, 2, 3, 4, 6) también tienen sus trampas — pero el de variación temporal es el que más papers MAE rompe. Por eso le dedicamos esta sección. Los métodos modernos (CS, CDH, SA, BJS) los retomamos en JC 7/8 como parte del cuadro síntesis.
Formato: parejas · 2 min por caso (8 min) · 5 min plenario · 2 min síntesis.
| # | Caso | Pregunta causal | ¿Qué patrón? ¿Qué método? |
|---|---|---|---|
| A | 4G en Catatumbo | ¿La apertura de tramos 4G aumenta el empleo formal municipal? Datos panel anuales · distintos pueblos tratados en distintos años. | _____________ |
| B | Microcrédito BancaMía | ¿Recibir un microcrédito aumenta los ingresos del hogar? 2.000 hogares asignados aleatoriamente a recibir/no recibir · 1 momento. | _____________ |
| C | Cesárea automática | ¿La cesárea automática reduce mortalidad neonatal? Los hospitales aplican cesárea si peso al nacer < 2.500g · cross-section de 50.000 nacimientos. | _____________ |
| D | Reforma agraria Bolivia 2009 | ¿La reforma agraria boliviana redujo la concentración de tierras? Bolivia tratada · resto LATAM como controles · panel anual 1990-2024. | _____________ |
Consejo
Plantilla de respuesta (1 línea por caso):
“Caso A: patrón [N°] (nombre) · estrategia [exogeneidad / condicionamiento / DiD / RDD / IV] · método primario [OLS / CS / RDD / Synthetic / …] · cross-check con [método secundario].”
Respuestas + papers análogos (revelar al final · lecturas modernas para los 4 ejemplos):
| Patrón DAG | Estrategia | Método primario | Cross-check / robustez | Software |
|---|---|---|---|---|
| 1. Randomización | Comparar medias | OLS · ITT/ATE [@AtheyImbens2017Handbook] | Randomization inference · stratified balance [@BruhnMcKenzie2009] | fixest · ri2 |
| 2. Sel. observables | Condicionar en X | OLS + controles · CEM [@IacusKingPorro2012] · PSM [@Imbens2015Matching] | Oster δ [@Oster2019] · DR/DML [@Chernozhukov2018DML] | cem · MatchIt · robomit |
| 3. Instrumento | Explotar Z exógeno | 2SLS · LATE [@AngristImbensRubin1996] | Weak-IV F > 104.7 [@AndrewsStockSun2019] · Anderson-Rubin · MTE [@MogstadTorgovitskyWalters2024] | ivreg · ivmodel · ivmte |
| 4. Discontinuidad | Local randomization | RDD sharp/fuzzy local-linear [@CattaneoIdroboTitiunik2020] | Robust CI [@CalonicoCattaneoTitiunik2014] · McCrary moderno · placebos | rdrobust · rddensity |
| 5a. DiD 2×2 | DiD clásico | TWFE (sólo 1 grupo · 1 momento) | Event-study · placebos pre-trends | fixest |
| 5b. DiD staggered | DiD moderno | CS · CDH · SA · BJS | ≥2 estimadores en paralelo · Honest DiD (Rambachan-Roth) | did · DIDmultiplegt |
| 5c. 1 tratado | Counterfactual sintético | Synthetic Control · SDID | Placebo in-space · in-time · permutation | Synth · synthdid |
| 6. Alta dimensión | ML para nuisance | DML (Chernozhukov) · Causal Forest (Athey-Wager) | Múltiples seeds · sample splitting · validation | DoubleML · grf |
El insight central: el nombre del método NO es lo importante. Lo importante es la estrategia de identificación que tu DAG implica. Una vez que la estrategia está clara, los métodos son implementaciones intercambiables — por eso siempre corrés ≥2 como cross-check.
Decisión personal · 7 pasos en papel · 5 min:
Consejo
Output esperado (1 línea · al encabezado del PAP H3):
“Mi DAG H2 implica patrón [N°] (variación temporal staggered) · estrategia DiD moderna · método primario Callaway-Sant’Anna porque [datos · multiple-period · cohortes claras] · cross-check con de Chaisemartin-D’H porque [robustez a heterogeneidad].”
→ Esta frase entra al PAP H3 del viernes (22/05) y es el input directo al Lab L4 (Sprint 2 · ahora).
Advertencia
Si tu decisión es “TWFE clásico” sin haber identificado el patrón ni nombrado un cross-check → la decisión está mal. Re-leé JC 6/8.
Lo que se llevan del Sprint 1: el método NO es un menú · es la respuesta operativa a tu DAG. Sprint 2 (Lab L4) es escribir el código que tu decisión de hoy implica · con IA auditada línea por línea.
Café · estiramiento · verificá Copilot/Cursor activos · abrí el repo H2 · prepará tu DAG en pantalla — el Lab L4 arranca corriendo
20 JC · 70 Act · 90 min · IA escribe · vos auditás línea por línea
El contrato del Lab L4 (no negociable):
audit/L4-pair-programming.md. Sin audit no hay entrega.Consejo
Evidencia empírica (no es teoría):
Advertencia
5 errores de IA documentados:
→ Documentá ≥1 en tu audit. “La IA no se equivocó” = re-leé con suspicacia.
Plantilla (en materiales/prompt-pair-programming.md):
# CONTEXTO
- Lenguaje: R (tidyverse + did + fixest)
- Datos: panel municipal · 2010-2022 · n=1100
- Tratamiento: post_4G (staggered · 2014-2022)
- Outcome: tasa_ocupacion (continua)
- DAG H2: Pavimento → Empleo (confounders: Z₁, Z₂)
# TAREA
Implementar event-study con Callaway-Sant'Anna:
1. Verificar tipos de columnas (id, time, treat)
2. Estimar ATT(g,t) con never-treated como control
3. Agregar a dynamic event-study
4. Plot con ggdid
5. Sin pre-treatment leads ≥ 4 periodos
# RESTRICCIONES
- No instalar paquetes nuevos sin confirmar
- Reportar warning() en consola si encuentra NA
- Comentar cada decisión metodológica
# ENTREGABLE
Script `code/01_did_cs.R` con
sessionInfo() y semilla 2026.Consejo
Por qué este prompt funciona:
→ Sin esta estructura, la IA improvisa · y improvisar es donde aparecen los 5 errores del slide anterior.
Advertencia
Trampa común: pegar el prompt y aceptar el output. No. Después del primer output, pedí:
“Antes de aceptar, explicame línea por línea qué hace y qué supuestos asume.”
Eso entra al audit log.
Estructura por entrada:
| # | Hora | Prompt enviado (resumen) | Output recibido (esencia) | Decisión | Justificación / acción |
|---|---|---|---|---|---|
| 01 | 09:42 | "Implementá CS event-study staggered con never-treated como control · panel.csv" | Sugiere did::att_gt(...,control_group="nevertreated") + agregación dinámica + plot |
✅ ACEPTAR | Verifico clase de id (factor), tipo de time (int), gname correcto. Corro · plot razonable. Commit. |
| 02 | 09:55 | "Añadí CDH con DIDmultiplegt para cross-check" | Sugiere did_multiplegt(...,placebo=4) pero omite argumento dynamic=4 |
⚠️ EDITAR | Sin dynamic, no comparable al event-study de CS. Lo añado manualmente. Documento. |
| 03 | 10:08 | "¿Cómo manejo unbalanced panel?" | Sugiere na.omit() en todo el panel |
❌ RECHAZAR | ERROR DETECTADO: drop indiscriminado introduce sesgo selección. Pedir versión con panel = "unbalanced". |
Advertencia
Mínimo de entradas para H3: ~15–25 prompts auditados. Calidad > cantidad — preferí 15 con justificación densa que 50 con “✅ ACEPTAR” sin comentario.
Estructura del Lab L4 (60 min de implementación + 10 cierre):
| Min | Actividad |
|---|---|
| 0–10 | Sentarse en parejas · compartir DAG H2 + decisión Sprint 1 |
| 10–30 | Implementar estimador primario (CS · CDH · SC · etc.) |
| 30–50 | Implementar estimador secundario (cross-check) |
| 50–60 | Diagnósticos (Goodman-Bacon · pre-trends · placebos) |
| 60–70 | Cierre: commit · audit log completo · cross-check escrito |
Consejo
Rol del compañero/a de pareja:
→ Reglas idénticas al Lab L3, pero con código en lugar de DAG.
Advertencia
Si tu pareja no llegó hoy → trabajás solo · al final del Lab L4 pedís a JC un auditor cruzado de otra pareja durante el Sprint 3.
Stack sugerido R:
library(did) # CS
library(DIDmultiplegt) # CDH
library(fixest) # SA via sunab()
library(bacondecomp) # diagnóstico
library(HonestDiD) # sensitivity
library(tidyverse) # datos
library(modelsummary) # tablasStack sugerido Python:
Plantilla R abreviada (materiales/plantilla-DiD-eventstudy.R):
set.seed(2026)
panel <- read_csv("data/panel.csv")
# 1. Diagnóstico Goodman-Bacon
bd <- bacon(y ~ post_treat, panel,
id_var="id", time_var="t")
# 2. CS · primario
att <- did::att_gt(yname="y", tname="t",
idname="id", gname="gtreat",
data=panel)
es <- did::aggte(att, type="dynamic")
# 3. CDH · cross-check
cdh <- DIDmultiplegt::did_multiplegt(
panel, "y", "id", "t", "post_treat",
placebo=4, dynamic=4)
# 4. Comparar + plot
modelsummary(list(CS=es, CDH=cdh),
output="output/tab_did.tex")Advertencia
Reglas durante el Lab: 1) Audit log abierto y actualizado en vivo. 2) Cada error de IA detectado → entrada en audit con etiqueta [ERROR_IA]. 3) Si la IA propone una especificación (no sólo sintaxis), vos decidís — eso NO se delega.
Sin café · sigan programando. Estos 5 min son para terminar el último chunk del Lab L4 y dejar 1 sola pantalla con: tu PAP draft · audit log al día · output principal a la vista. En 5 minutos 3 pares juzgan tu identificación — necesitan ver el código corriendo, no buscar archivos.
10 JC · 70 Act · 80 min · 3 pares juzgan tu identificación antes que el jurado real
(Brodeur et al., 2020) · Methods matter — p-hacking and publication bias in causal analysis in economics:
Análisis de ~22.000 t-statistics de 25 revistas top muestra exceso sistemático de p-valores justo abajo de 0.05 — y el exceso depende del método:
Advertencia
Implicación normativa:
El método que elegís predice el riesgo de p-hacking que vas a enfrentar.
→ Si tu método es DiD o IV, el escrutinio adversarial es especialmente importante. No porque vos seas tramposo, sino porque la flexibilidad de especificación es estructural.
→ El Replication Court es la versión pedagógica del peer review previa a la sustentación.
Consejo
Spirit of moderation: este sprint no busca destruir tu PAP — busca fortalecerlo contra ataques predecibles, antes de que aparezcan en U8.
Antes de que los jueces ataquen, podés blindar tu PAP con dos técnicas frontier 2020+:
📊 Specification Curve (Simonsohn et al., 2020)
Enumerá todas las especificaciones razonables (controles · clusters · medidas), corré las N, plotealas ordenadas. Si la mayoría es del mismo signo → robustez alta.
library(specr)
setup <- setup(data, y, x,
controls = c("c1","c2","c3"),
subsets = list(region = c("A","B")))
spec_curve <- specr(setup)
plot(spec_curve)→ Output: curva + decomposicional de qué decisión mueve más.
🌌 Multiverse Analysis (Steegen et al., 2016)
Enumerá todas las decisiones razonables sobre el dataset (filtros · missing · outliers · codificación), generá la matriz de datasets, corré tu análisis en todos.
→ Output: histograma de p-values + curva de coeficientes a través de los N datasets.
Pareja perfecta con spec curve: multiverse maneja decisiones de datos; spec curve maneja decisiones de modelo.
Advertencia
Por qué importa hoy: (Munafò et al., 2017) · el manifesto canónico de open science 2017 — pre-registración + spec curve + multiverse + open data + replication = el stack 2026 de transparencia. Si tu PAP no incluye al menos 1 de estas técnicas modernas, el Replication Court te lo va a marcar.
4 fases por ronda (≈20 min cada una):
| Min | Fase | Quién habla |
|---|---|---|
| 0–5 | Presentación del PAP | 👤 Autor (DAG · método · identificación · placebos · sensitivity) |
| 5–12 | Escrutinio + 3 ataques | ⚖️ Jueces (autor calla · secretario/a transcribe) |
| 12–15 | Respuesta del autor | 👤 Autor (acepta · refuta · marca para remediación) |
| 15–20 | Veredicto + acta firmada | ⚖️ Jueces votan · 📋 secretario/a entrega acta |
→ Cada estudiante juega autor 1 vez · juez 2 veces · secretario/a 1 vez (rotación).
Las 3 rondas (≈22 min cada una):
| Ronda | Autor | Jueces | Secretario/a |
|---|---|---|---|
| 1 | Picker | 2 picker | 1 picker |
| 2 | Rotación | Rotación | Rotación |
| 3 | Rotación | Rotación | Rotación |
→ Al final de la 3ra ronda, todos jugaron 1 vez de autor.
Consejo
Plantilla del acta (materiales/replication-court-template.md):
# Acta Replication Court · Ronda __
Autor: __ · Jueces: __, __
## PAP presentado (esencia)
__
## 3 ataques al supuesto principal
1. __ (juez 1)
2. __ (juez 2)
3. __ (consenso)
## Respuesta del autor
__
## Veredicto: ✅ / ⚠️ / ❌
## Plan de remediación (lockdown H3)
- [ ] __
- [ ] __
Firmas: ____ ____ ____Advertencia
Reglas duras: 1) Autor calla en fase 2 (escrutinio) · 2) Jueces atacan el supuesto, no la persona · 3) Acta firmada va al audit log como evidencia del juicio adversarial · 4) Veredicto NO afecta la nota — la calidad del audit + remediación sí.
Roadmap para el trabajo en casa · entrega viernes 22/05 · 23:59
Advertencia
Este sprint NO se hace en aula. El lockdown vive en casa entre martes 21:00 y viernes 22/05 · 23:59. Lo que sigue es el roadmap que cierra la sesión de hoy.
make all (o equivalente) en otro computador y reproduce los outputs del PAP
Carpeta de entrega H3_apellido/:
H3_apellido/
├── README.md ← orientación al revisor
├── PAP_moderado.md ← documento principal
├── code/
│ ├── 01_diagnostico.R
│ ├── 02_did_primario.R
│ ├── 03_did_crosscheck.R
│ ├── 04_placebos.R
│ └── 05_sensitivity.R
├── output/
│ ├── tab_did.tex
│ ├── fig_eventstudy.pdf
│ └── fig_bacon.pdf
├── audit/
│ ├── L4-pair-programming.md
│ ├── replication-court-acta.md
│ └── AIAS-report.md
└── sessionInfo.txt
Consejo
Checklist H3 (PAP moderado + Lab L4 · 20%):
make all o equivalente)Plan sugerido (distribuilo a tu ritmo · 4 sesiones de ~1h):
make all (o Rscript code/01..05.R).Advertencia
Reglas duras del lockdown:
[POST_COURT].Consejo
Antes de 23:59: rodá una última vez make all. Si falla en otro computador (probalo con un compañero/a), volvé y arreglá.
Conceptual: - El método se elige por la pregunta · no por la moda. - TWFE clásico está roto con tratamiento escalonado (Goodman-Bacon, 2021). - CS · CDH · SA · BJS son canon moderno (Roth et al., 2023). - LLMs como datos = nuevo problema de medida (Ludwig et al., 2025). - PAP moderado = punto medio entre lock-in y post-hoc (Banerjee et al., 2020).
Operativo: - Goodman-Bacon decomposition obligatoria. - ≥2 estimadores como robustez · convergencia / divergencia documentada. - Lab L4 con audit log denso · ≥1 [ERROR_IA] detectado. - Replication Court · acta firmada · remediación trackeable.
Crítico: - p-hacking diferencial por método (Brodeur et al., 2020). - Pre-trends ≠ identificación (Roth et al., 2023). - LLMs introducen researcher degrees of freedom (Ludwig et al., 2025). - Reproducibilidad es estándar mínimo (Christensen & Miguel, 2018). - Jagged frontier: la IA se equivoca donde vos no la ves (Dell’Acqua et al., 2023).
Próximo (martes 19/05 · U7 online · 3h): - 📊 Comunicación + póster Quarto · Lab L5 (auditoría de prompts en thread). - 🎯 Cierre con peer review formal asincrónico. - 🏁 H4 (35%) + Peer (10%) — la sustentación viene la siguiente.
Si tu examinador en U8 te pregunta “¿qué hizo la IA por vos que vos no hiciste?” · ¿qué respondés sin que se vea como confesión de fraude — y sin que se vea como negación deshonesta?
Nota
Para el domingo:
Roth2023.md.Brodeur2020.md.Si tenés 30 min más:
Advertencia
🏁 ENTREGA H3 · viernes 22/05 · 23:59 · 20% de la nota final.
→ Repositorio Git con la estructura del checklist · email con link a JC · sello AIAS modo 4 explícito.
→ U7 (martes 19/05 online · 3h) abre con feedback grueso de H3 en los primeros 10 min.
💬 NotebookLM · Unidad 6
NotebookLM tiene cargadas todas las lecturas · slides · notas de esta unidad. Pregúntale conceptos · citas · conexiones · responde con referencia al material.
Requiere cuenta de Google. La conversación con el bot es parte del experimento: usar IA² para aprender IA².
Si la IA escribió tu código y vos no lo auditaste línea por línea,
ese código no es tuyo · ese paper no es defendible · ese PhD no es real.
🎯 Modo AIAS 4 hoy = full support auditada. 🤖 La IA implementa · 👤 vos auditás · 📝 audit log denso · ⚖️ pares juzgan · 🏁 H3 sellado a las 23:59.
EC0744 · Seminario de Investigación Aplicada Universidad EAFIT · Escuela de Finanzas, Economía y Gobierno 2026-1