{
  "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-p006",
    "study_id": 1,
    "study": "Curriculum and Ideology",
    "citation": "Cantoni et al. (2017), JPE. https://doi.org/10.1086/690951",
    "description": "CI-F4-F-DYNAMIC",
    "source_specification_id": "CI-F4-F-DYNAMIC",
    "specification_id": "S01-P006",
    "data": "repl-archives/twfe-microdata-replication-private/outputs/published_clustering_2026_10_08/curriculum/prepared_rows/CI-F4-F-DYNAMIC.csv",
    "output_dir": "analyses/full-archive/results/S01-P006"
  },
  "source": {
    "file": "CI-F4-F-DYNAMIC.csv",
    "bytes": 161991,
    "sha256": "b621dc9b7374d4a65eb1ab891cadbaca413e8d848b5b7d4689ffa7fabc8bd1c1"
  },
  "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": 1625,
        "source_sd": 0.45986142203116737,
        "rows": 1014,
        "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.15375133442040884,
          "se": 0.13497323278179119,
          "pvalue": 0.26958460322718686,
          "lower": -0.12981690517344047,
          "upper": 0.43731957401425814
        },
        {
          "method": "Dynamic TWFE",
          "estimate": 0.167886046245096,
          "se": 0.16185875094108587,
          "pvalue": 0.31335902970212615,
          "lower": -0.17216657101291621,
          "upper": 0.5079386635031082
        },
        {
          "method": "BJS / did2s",
          "estimate": 0.23632480194008415,
          "se": 0.15285152166796076,
          "pvalue": 0.13947937436226102,
          "lower": -0.08480432881651523,
          "upper": 0.5574539326966835
        },
        {
          "method": "Sun\u2013Abraham",
          "estimate": 0.14704642912415578,
          "se": 0.17762824106070244,
          "pvalue": 0.41860634151259235,
          "lower": -0.22613665748952216,
          "upper": 0.5202295157378337
        }
      ],
      "event_studies": {
        "Dynamic TWFE": [
          {
            "event_time": -3,
            "estimate": 0.2886787496981946,
            "se": 0.2174991043919501,
            "pvalue": 0.20101140569374656,
            "lower": -0.16826991245153977,
            "upper": 0.745627411847929
          },
          {
            "event_time": -2,
            "estimate": 0.18354837834328894,
            "se": 0.1800324460379209,
            "pvalue": 0.32146009385726454,
            "lower": -0.19468575549628445,
            "upper": 0.5617825121828623
          },
          {
            "event_time": 0,
            "estimate": 0.1361615608884481,
            "se": 0.13606179948786234,
            "pvalue": 0.33021986067502207,
            "lower": -0.14969367249045873,
            "upper": 0.42201679426735494
          },
          {
            "event_time": 1,
            "estimate": 0.21536684032856626,
            "se": 0.17522817549531736,
            "pvalue": 0.23487332776529937,
            "lower": -0.15277389564077057,
            "upper": 0.5835075762979031
          },
          {
            "event_time": 2,
            "estimate": 0.1564419565069196,
            "se": 0.25078883719930734,
            "pvalue": 0.5405847541354414,
            "lower": -0.3704458390115267,
            "upper": 0.6833297520253659
          }
        ],
        "BJS / did2s": [
          {
            "event_time": -3,
            "estimate": 0.02978150997055038,
            "se": 0.09693732668381903,
            "pvalue": 0.762198652291606,
            "lower": -0.17387625618153074,
            "upper": 0.2334392761226315
          },
          {
            "event_time": -2,
            "estimate": 0.06729866898690763,
            "se": 0.07380392251701687,
            "pvalue": 0.3738949013222956,
            "lower": -0.08775761848533496,
            "upper": 0.2223549564591502
          },
          {
            "event_time": -1,
            "estimate": -0.04597954034791488,
            "se": 0.029363112507766635,
            "pvalue": 0.13478427180308428,
            "lower": -0.1076691505855591,
            "upper": 0.015710069889729353
          },
          {
            "event_time": 0,
            "estimate": 0.1572310197462609,
            "se": 0.1477258656846805,
            "pvalue": 0.3012435717416118,
            "lower": -0.1531295073843716,
            "upper": 0.4675915468768934
          },
          {
            "event_time": 1,
            "estimate": 0.30634632206060514,
            "se": 0.1441572332500726,
            "pvalue": 0.04768313405063107,
            "lower": 0.0034832134653594027,
            "upper": 0.6092094306558509
          },
          {
            "event_time": 2,
            "estimate": 0.29884453199796673,
            "se": 0.2348954859438825,
            "pvalue": 0.21947676881895667,
            "lower": -0.19465257157466498,
            "upper": 0.7923416355705984
          }
        ],
        "Sun\u2013Abraham": [
          {
            "event_time": -3,
            "estimate": 0.3889205117403014,
            "se": 0.2655956979308297,
            "pvalue": 0.16035002451287805,
            "lower": -0.16907534383577982,
            "upper": 0.9469163673163826
          },
          {
            "event_time": -2,
            "estimate": 0.2684798260393992,
            "se": 0.22335389845789955,
            "pvalue": 0.24492484691366087,
            "lower": -0.20076930200456083,
            "upper": 0.7377289540833591
          },
          {
            "event_time": 0,
            "estimate": 0.1291304158678446,
            "se": 0.13774263014788582,
            "pvalue": 0.3609231705765238,
            "lower": -0.1602561116906184,
            "upper": 0.41851694342630763
          },
          {
            "event_time": 1,
            "estimate": 0.17813827945574495,
            "se": 0.18896030974311606,
            "pvalue": 0.3583018541786382,
            "lower": -0.21885260001434098,
            "upper": 0.5751291589258309
          },
          {
            "event_time": 2,
            "estimate": 0.13252878607646,
            "se": 0.30656668303645523,
            "pvalue": 0.6706579446702603,
            "lower": -0.5115439151184172,
            "upper": 0.7766014872713373
          }
        ]
      },
      "target": {
        "event_times": [
          0.0,
          1.0,
          2.0
        ],
        "weights": [
          0.4601593625498008,
          0.35258964143426297,
          0.18725099601593626
        ],
        "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": 6.864594391061007e-16
      },
      "inference": {
        "standard_errors": "Cluster-robust; did2s uses two-stage covariance",
        "confidence_intervals": "Pointwise t, clusters minus one degrees of freedom"
      },
      "f_test": {
        "F": 0.6107034495331372,
        "df_num": 1,
        "df_den": 983,
        "pvalue": 0.43471124320206456,
        "log10_pvalue": -0.3617991272407921,
        "inference": "Homoskedastic nested-model F",
        "observations": 1014,
        "design_columns": 9,
        "restricted_design_columns": 8,
        "fixed_effect_rank": 22,
        "covariance_rank": 1,
        "rss_unrestricted": 993.6800158476174,
        "rss_restricted": 994.2973544167021,
        "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.1414709897688139,
              -0.1680473098230818,
              -0.021790508716747058,
              -0.09093206434842477,
              -0.1537063465523408,
              -0.21840564497472847
            ],
            [
              -0.1414709897688139,
              -0.1680473098230818,
              -0.021790508716747058,
              -0.09093206434842477,
              -0.1537063465523408,
              -0.21840564497472847
            ],
            [
              -0.1414709897688139,
              -0.1680473098230818,
              -0.021790508716747058,
              -0.09093206434842477,
              -0.1537063465523408,
              -0.21840564497472847
            ],
            [
              -0.1414709897688139,
              -0.1680473098230818,
              -0.021790508716747058,
              -0.09093206434842477,
              -0.1537063465523408,
              -0.21840564497472847
            ],
            [
              -0.1414709897688139,
              -0.1680473098230818,
              -0.021790508716747058,
              -0.09093206434842477,
              -0.1537063465523408,
              -0.21840564497472847
            ]
          ]
        },
        "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.0664034433873659
          },
          {
            "event_time": 0.0,
            "cohort": 3,
            "estimate": 0.03694038374505383
          },
          {
            "event_time": 1.0,
            "cohort": 3,
            "estimate": 0.30954619161688635
          },
          {
            "event_time": 0.0,
            "cohort": 4,
            "estimate": 0.1319189088828183
          }
        ]
      }
    }
  },
  "code_sha256": {
    "replication_engine.py": "85957b22db6cf6312f27a925b03b907e4d51071cc59a60cfdf2d7b039b1e34eb",
    "reference_f_test.py": "26f3d65e1ff59d46f05bb28011b2ed34b9ee150f04c47c144dd6836a4d75d6f0",
    "sparse_did2s.py": "a348042269b0077dd2916898779f992f0b5fc2971edfee8b0118d3af715eaafb"
  }
}
