{
  "schema": "did-replication-v2",
  "config": {
    "outcomes": [
      "y"
    ],
    "treatments": [
      "d"
    ],
    "unit": "unit",
    "time": "time",
    "cluster": "cluster",
    "covariates": [],
    "baseline_by_time": [],
    "weight": null,
    "period_step": 1,
    "period_values": null,
    "display_window": [
      -10,
      10
    ],
    "seed": 20261008,
    "panelview_max_units": 100,
    "test_mode": "classical",
    "test_horizon": null,
    "post_horizon": null,
    "post_weighting": "observations",
    "sample_query": null,
    "reversal_policy": "drop_post_untreated",
    "labels": {
      "y": "",
      "d": ""
    },
    "allow_repeated_cells": true,
    "time_fe": null,
    "latest_cohort_control": true,
    "slug": "s01-p005",
    "study_id": 1,
    "study": "Curriculum and Ideology",
    "citation": "Cantoni et al. (2017), JPE. https://doi.org/10.1086/690951",
    "description": "CI-F4-E-DYNAMIC",
    "source_specification_id": "CI-F4-E-DYNAMIC",
    "specification_id": "S01-P005",
    "data": "repl-archives/twfe-microdata-replication-private/outputs/published_clustering_2026_10_08/curriculum/prepared_rows/CI-F4-E-DYNAMIC.csv",
    "output_dir": "analyses/full-archive/results/S01-P005"
  },
  "source": {
    "file": "CI-F4-E-DYNAMIC.csv",
    "bytes": 171860,
    "sha256": "ac794208fb03601e2a803eeb774c034215ef9bd5d69c3a573573c20ad06e8b28"
  },
  "versions": {
    "pyfixest": "0.60.0",
    "polars": "2.0.0",
    "duckreg": "0.4.1",
    "numpy": "2.5.3",
    "pandas": "3.0.6"
  },
  "specifications": {
    "y__d": {
      "sample": {
        "outcome": "y",
        "treatment": "d",
        "source_rows": 1724,
        "source_sd": 0.4888700552191544,
        "rows": 1083,
        "units": 19,
        "clusters": 19,
        "treated_units": 13,
        "never_treated_units": 6,
        "treated_cohorts": 3,
        "latest_cohort_control_index": null,
        "unique_unit_period_cells": 76,
        "unsupported_prediction_rows_removed": 0,
        "initially_treated_units_removed": 10,
        "post_adoption_untreated_rows_removed": 0,
        "units_without_minus_one_removed": 0,
        "additional_rows_removed": 0
      },
      "estimates": [
        {
          "method": "Static TWFE",
          "estimate": 0.13635414951625027,
          "se": 0.1067820354752803,
          "pvalue": 0.21785132432541915,
          "lower": -0.08798658231556652,
          "upper": 0.36069488134806704
        },
        {
          "method": "Dynamic TWFE",
          "estimate": 0.19638456140282684,
          "se": 0.16605034388484874,
          "pvalue": 0.25232272492732366,
          "lower": -0.15247426585445556,
          "upper": 0.5452433886601092
        },
        {
          "method": "BJS / did2s",
          "estimate": 0.17499987708226145,
          "se": 0.13898653984676795,
          "pvalue": 0.2240735365305159,
          "lower": -0.11700000777865266,
          "upper": 0.46699976194317555
        },
        {
          "method": "Sun\u2013Abraham",
          "estimate": 0.26144575205381165,
          "se": 0.17200563612269446,
          "pvalue": 0.14588611118204134,
          "lower": -0.09992467992203719,
          "upper": 0.6228161840296604
        }
      ],
      "event_studies": {
        "Dynamic TWFE": [
          {
            "event_time": -3,
            "estimate": -0.023321673146234935,
            "se": 0.22401371254533262,
            "pvalue": 0.9182346945440056,
            "lower": -0.49395701914894463,
            "upper": 0.4473136728564747
          },
          {
            "event_time": -2,
            "estimate": 0.13365187342818993,
            "se": 0.14828955982650502,
            "pvalue": 0.37933599306973237,
            "lower": -0.17789293114895652,
            "upper": 0.44519667800533635
          },
          {
            "event_time": 0,
            "estimate": 0.17860061394049828,
            "se": 0.11757123792673,
            "pvalue": 0.14611097295667844,
            "lower": -0.06840739111819183,
            "upper": 0.4256086189991884
          },
          {
            "event_time": 1,
            "estimate": 0.17774816807766167,
            "se": 0.19467793899638267,
            "pvalue": 0.37329091336498993,
            "lower": -0.23125500470853896,
            "upper": 0.5867513408638623
          },
          {
            "event_time": 2,
            "estimate": 0.27814736982950744,
            "se": 0.2806414603625026,
            "pvalue": 0.33476762137400135,
            "lower": -0.3114584596515059,
            "upper": 0.8677531993105208
          }
        ],
        "BJS / did2s": [
          {
            "event_time": -3,
            "estimate": -0.14916710567284966,
            "se": 0.06381484204419623,
            "pvalue": 0.031163966976272828,
            "lower": -0.283237113818002,
            "upper": -0.015097097527697334
          },
          {
            "event_time": -2,
            "estimate": 0.07370322154550249,
            "se": 0.04953643485095546,
            "pvalue": 0.1540977016205607,
            "lower": -0.030368966227834138,
            "upper": 0.17777540931883912
          },
          {
            "event_time": -1,
            "estimate": -0.008504624757488212,
            "se": 0.02309040849883266,
            "pvalue": 0.7169317028320193,
            "lower": -0.05701577289085473,
            "upper": 0.0400065233758783
          },
          {
            "event_time": 0,
            "estimate": 0.14898991110356632,
            "se": 0.11912045912045192,
            "pvalue": 0.22704022804186622,
            "lower": -0.10127288690622274,
            "upper": 0.3992527091133554
          },
          {
            "event_time": 1,
            "estimate": 0.1955519873155793,
            "se": 0.15489514124081158,
            "pvalue": 0.222888139943953,
            "lower": -0.12987062884349035,
            "upper": 0.520974603474649
          },
          {
            "event_time": 2,
            "estimate": 0.20241479338167725,
            "se": 0.22540658684889087,
            "pvalue": 0.3810413286156862,
            "lower": -0.27114687294466333,
            "upper": 0.6759764597080178
          }
        ],
        "Sun\u2013Abraham": [
          {
            "event_time": -3,
            "estimate": -0.31313075294674975,
            "se": 0.20982055636335192,
            "pvalue": 0.15292099566618567,
            "lower": -0.7539473843061528,
            "upper": 0.12768587841265333
          },
          {
            "event_time": -2,
            "estimate": 0.030365326723928512,
            "se": 0.15130892098597507,
            "pvalue": 0.8431955551640257,
            "lower": -0.2875229202605963,
            "upper": 0.3482535737084533
          },
          {
            "event_time": 0,
            "estimate": 0.21687970765817133,
            "se": 0.11509168813699475,
            "pvalue": 0.07576385325370368,
            "lower": -0.024918956597388964,
            "upper": 0.4586783719137316
          },
          {
            "event_time": 1,
            "estimate": 0.2979525676197547,
            "se": 0.21416287921703483,
            "pvalue": 0.18111000411085282,
            "lower": -0.15198694552879316,
            "upper": 0.7478920807683025
          },
          {
            "event_time": 2,
            "estimate": 0.30592757254946873,
            "se": 0.29867914846243376,
            "pvalue": 0.31927782532252924,
            "lower": -0.3215740334156835,
            "upper": 0.9334291785146209
          }
        ]
      },
      "target": {
        "event_times": [
          0.0,
          1.0,
          2.0
        ],
        "weights": [
          0.4681647940074906,
          0.350187265917603,
          0.18164794007490637
        ],
        "weighting": "observations"
      },
      "checks": {
        "did2s_vs_direct_imputation_max_post_difference": 5.551115123125783e-17,
        "package_aggregate_vs_estimable_cell_weights": 0.0,
        "saturated_vs_deviations_relative_rss_difference": 1.3130036868008247e-15
      },
      "inference": {
        "standard_errors": "Cluster-robust; did2s uses two-stage covariance",
        "confidence_intervals": "Pointwise t, clusters minus one degrees of freedom"
      },
      "f_test": {
        "F": 0.4331085643784782,
        "df_num": 1,
        "df_den": 1052,
        "pvalue": 0.5106115374240232,
        "log10_pvalue": -0.29190937640411513,
        "inference": "Homoskedastic nested-model F",
        "observations": 1083,
        "design_columns": 9,
        "restricted_design_columns": 8,
        "fixed_effect_rank": 22,
        "covariance_rank": 1,
        "rss_unrestricted": 1039.0237791208415,
        "rss_restricted": 1039.4515453730564,
        "test_horizon": null,
        "reference_cohort": 2,
        "pyfixest": "0.27.0",
        "formulaic": "1.0.2",
        "design_head": {
          "index": [
            0,
            1,
            2,
            3,
            4
          ],
          "columns": [
            "C(rel_time, contr.treatment(base=-1.0))[T.-3.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.-2.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.0.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.1.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.2.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.-2.0]:cohort_dummy_3"
          ],
          "data": [
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ],
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ],
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ],
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ],
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ]
          ]
        },
        "formula": "y~i(rel_time,ref=-1.0)+i(rel_time,cohort_dummy_3,ref=-1.0)+i(rel_time,cohort_dummy_4,ref=-1.0)|unit+time_fe",
        "restriction_names": [
          "C(rel_time, contr.treatment(base=-1.0))[T.1.0]:cohort_dummy_3"
        ],
        "deviations": [
          {
            "event_time": -2.0,
            "cohort": 3,
            "estimate": -0.032809171391569636
          },
          {
            "event_time": 0.0,
            "cohort": 3,
            "estimate": 0.05133557723507915
          },
          {
            "event_time": 1.0,
            "cohort": 3,
            "estimate": -0.24729646911664116
          },
          {
            "event_time": 0.0,
            "cohort": 4,
            "estimate": -0.5186092621778468
          }
        ]
      }
    }
  },
  "code_sha256": {
    "replication_engine.py": "85957b22db6cf6312f27a925b03b907e4d51071cc59a60cfdf2d7b039b1e34eb",
    "reference_f_test.py": "26f3d65e1ff59d46f05bb28011b2ed34b9ee150f04c47c144dd6836a4d75d6f0",
    "sparse_did2s.py": "a348042269b0077dd2916898779f992f0b5fc2971edfee8b0118d3af715eaafb"
  }
}
