{
  "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-p008",
    "study_id": 1,
    "study": "Curriculum and Ideology",
    "citation": "Cantoni et al. (2017), JPE. https://doi.org/10.1086/690951",
    "description": "CI-F4-H-DYNAMIC",
    "source_specification_id": "CI-F4-H-DYNAMIC",
    "specification_id": "S01-P008",
    "data": "repl-archives/twfe-microdata-replication-private/outputs/published_clustering_2026_10_08/curriculum/prepared_rows/CI-F4-H-DYNAMIC.csv",
    "output_dir": "analyses/full-archive/results/S01-P008"
  },
  "source": {
    "file": "CI-F4-H-DYNAMIC.csv",
    "bytes": 169709,
    "sha256": "5cd04538ff79ba999f6cf18cbe81911b892a284f3e4da6fc1537ca17987c991f"
  },
  "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": 1702,
        "source_sd": 0.7096963825184518,
        "rows": 1067,
        "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.12068036700026649,
          "se": 0.1391896861950219,
          "pvalue": 0.3973416817325259,
          "lower": -0.17174631250108877,
          "upper": 0.4131070465016218
        },
        {
          "method": "Dynamic TWFE",
          "estimate": -0.09456533532615642,
          "se": 0.2289024791861355,
          "pvalue": 0.684394793927107,
          "lower": -0.575471598914124,
          "upper": 0.38634092826181116
        },
        {
          "method": "BJS / did2s",
          "estimate": 0.041443225960140814,
          "se": 0.21035716330586957,
          "pvalue": 0.846024378868492,
          "lower": -0.40050077475174395,
          "upper": 0.4833872266720256
        },
        {
          "method": "Sun\u2013Abraham",
          "estimate": -0.02158858000909039,
          "se": 0.26091296759778787,
          "pvalue": 0.9349695249932817,
          "lower": -0.5697463842199788,
          "upper": 0.5265692242017981
        }
      ],
      "event_studies": {
        "Dynamic TWFE": [
          {
            "event_time": -3,
            "estimate": 0.44330946432046797,
            "se": 0.3038878669017064,
            "pvalue": 0.16185222737270658,
            "lower": -0.19513525301516205,
            "upper": 1.081754181656098
          },
          {
            "event_time": -2,
            "estimate": -0.18101354818929485,
            "se": 0.1934361268028217,
            "pvalue": 0.36177266523801194,
            "lower": -0.5874077703682032,
            "upper": 0.2253806739896135
          },
          {
            "event_time": 0,
            "estimate": 0.057297050121776494,
            "se": 0.1669956272151844,
            "pvalue": 0.7354940047110868,
            "lower": -0.2935477437184806,
            "upper": 0.40814184396203357
          },
          {
            "event_time": 1,
            "estimate": -0.27877494215796667,
            "se": 0.25497913209519635,
            "pvalue": 0.2886679482490302,
            "lower": -0.8144662205782958,
            "upper": 0.2569163362623625
          },
          {
            "event_time": 2,
            "estimate": -0.12524208569121553,
            "se": 0.40673887448335844,
            "pvalue": 0.7616796143256351,
            "lower": -0.9797687517161365,
            "upper": 0.7292845803337055
          }
        ],
        "BJS / did2s": [
          {
            "event_time": -3,
            "estimate": 0.18408589878090206,
            "se": 0.09983781902545916,
            "pvalue": 0.08173127889475933,
            "lower": -0.025665575659281126,
            "upper": 0.39383737322108525
          },
          {
            "event_time": -2,
            "estimate": -0.16865367116023394,
            "se": 0.07094871111591136,
            "pvalue": 0.028743455381926953,
            "lower": -0.31771138207034644,
            "upper": -0.01959596025012142
          },
          {
            "event_time": -1,
            "estimate": 0.05923356318301539,
            "se": 0.03798002034633212,
            "pvalue": 0.13626373107981585,
            "lower": -0.020559498651396828,
            "upper": 0.1390266250174276
          },
          {
            "event_time": 0,
            "estimate": 0.13821569634598932,
            "se": 0.1583406447277652,
            "pvalue": 0.3942129773631237,
            "lower": -0.19444565402854855,
            "upper": 0.4708770467205272
          },
          {
            "event_time": 1,
            "estimate": -0.03776990998964739,
            "se": 0.2313723895514965,
            "pvalue": 0.8721459787213056,
            "lower": -0.5238652627016217,
            "upper": 0.4483254427223269
          },
          {
            "event_time": 2,
            "estimate": -0.050907832013428404,
            "se": 0.4258985043740324,
            "pvalue": 0.9061791184115278,
            "lower": -0.9456873867585274,
            "upper": 0.8438717227316705
          }
        ],
        "Sun\u2013Abraham": [
          {
            "event_time": -3,
            "estimate": 0.08353138198775387,
            "se": 0.34397366167339327,
            "pvalue": 0.8108731957385378,
            "lower": -0.6391304650842922,
            "upper": 0.8061932290598
          },
          {
            "event_time": -2,
            "estimate": -0.2919111206400988,
            "se": 0.2627877143502324,
            "pvalue": 0.28126241548030734,
            "lower": -0.8440076216230683,
            "upper": 0.2601853803428707
          },
          {
            "event_time": 0,
            "estimate": 0.07997578854625675,
            "se": 0.17977073177274297,
            "pvalue": 0.6617122614256189,
            "lower": -0.29770850402535887,
            "upper": 0.4576600811178724
          },
          {
            "event_time": 1,
            "estimate": -0.08574399317382328,
            "se": 0.28628624373432376,
            "pvalue": 0.7679860743438404,
            "lower": -0.6872090724530819,
            "upper": 0.5157210861054353
          },
          {
            "event_time": 2,
            "estimate": -0.15471182219495752,
            "se": 0.5068453024459106,
            "pvalue": 0.7636814268843117,
            "lower": -1.2195542890962061,
            "upper": 0.9101306447062911
          }
        ]
      },
      "target": {
        "event_times": [
          0.0,
          1.0,
          2.0
        ],
        "weights": [
          0.46387832699619774,
          0.3517110266159696,
          0.1844106463878327
        ],
        "weighting": "observations"
      },
      "checks": {
        "did2s_vs_direct_imputation_max_post_difference": 2.7755575615628914e-17,
        "package_aggregate_vs_estimable_cell_weights": 0.0,
        "saturated_vs_deviations_relative_rss_difference": 1.0688193739557529e-15
      },
      "inference": {
        "standard_errors": "Cluster-robust; did2s uses two-stage covariance",
        "confidence_intervals": "Pointwise t, clusters minus one degrees of freedom"
      },
      "f_test": {
        "F": 1.1500893384319293,
        "df_num": 1,
        "df_den": 1036,
        "pvalue": 0.2837801924891031,
        "log10_pvalue": -0.5470179210451782,
        "inference": "Homoskedastic nested-model F",
        "observations": 1067,
        "design_columns": 9,
        "restricted_design_columns": 8,
        "fixed_effect_rank": 22,
        "covariance_rank": 1,
        "rss_unrestricted": 1063.6674492609106,
        "rss_restricted": 1064.8482529221385,
        "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.14100276518141835,
              -0.17267536749550852,
              -0.007798658875369719,
              -0.10074602441988284,
              -0.15410242626917267,
              -0.22106714079325077
            ],
            [
              -0.14100276518141835,
              -0.17267536749550852,
              -0.007798658875369719,
              -0.10074602441988284,
              -0.15410242626917267,
              -0.22106714079325077
            ],
            [
              -0.14100276518141835,
              -0.17267536749550852,
              -0.007798658875369719,
              -0.10074602441988284,
              -0.15410242626917267,
              -0.22106714079325077
            ],
            [
              -0.14100276518141835,
              -0.17267536749550852,
              -0.007798658875369719,
              -0.10074602441988284,
              -0.15410242626917267,
              -0.22106714079325077
            ],
            [
              -0.14100276518141835,
              -0.17267536749550852,
              -0.007798658875369719,
              -0.10074602441988284,
              -0.15410242626917267,
              -0.22106714079325077
            ]
          ]
        },
        "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.36418438111110035
          },
          {
            "event_time": 0.0,
            "cohort": 3,
            "estimate": 0.42888430559986523
          },
          {
            "event_time": 1.0,
            "cohort": 3,
            "estimate": -0.4142448431369223
          },
          {
            "event_time": 0.0,
            "cohort": 4,
            "estimate": -0.4408248638132801
          }
        ]
      }
    }
  },
  "code_sha256": {
    "replication_engine.py": "85957b22db6cf6312f27a925b03b907e4d51071cc59a60cfdf2d7b039b1e34eb",
    "reference_f_test.py": "26f3d65e1ff59d46f05bb28011b2ed34b9ee150f04c47c144dd6836a4d75d6f0",
    "sparse_did2s.py": "a348042269b0077dd2916898779f992f0b5fc2971edfee8b0118d3af715eaafb"
  }
}
