{
  "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,
    "unit_fe": null,
    "frequency_weights": false,
    "source_sd": null,
    "latest_cohort_control": true,
    "slug": "s01-p007",
    "study_id": 1,
    "study": "Curriculum and Ideology",
    "citation": "Cantoni et al. (2017), JPE. https://doi.org/10.1086/690951",
    "description": "CI-F4-G-DYNAMIC",
    "source_specification_id": "CI-F4-G-DYNAMIC",
    "specification_id": "S01-P007",
    "data": "repl-archives/twfe-microdata-replication-private/outputs/published_clustering_2026_10_08/curriculum/prepared_rows/CI-F4-G-DYNAMIC.csv",
    "output_dir": "analyses/full-archive/results/S01-P007"
  },
  "source": {
    "file": "CI-F4-G-DYNAMIC.csv",
    "bytes": 212271,
    "sha256": "ef4f89c0f8249fe10b4d19022435114f057b1f7918f25eb3c28533504e9c11a8"
  },
  "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": 1803,
        "source_sd": 0.9934251978017575,
        "rows": 1131,
        "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.09713268965189745,
          "se": 0.11416423157910575,
          "pvalue": 0.4060482566197997,
          "lower": -0.14271746067982777,
          "upper": 0.33698283998362266
        },
        {
          "method": "Dynamic TWFE",
          "estimate": 0.15275868556552996,
          "se": 0.11667794172926976,
          "pvalue": 0.20692263207728853,
          "lower": -0.09237257382345243,
          "upper": 0.39788994495451235
        },
        {
          "method": "BJS / did2s",
          "estimate": 0.15890542995086349,
          "se": 0.11225349685752446,
          "pvalue": 0.17396448332515857,
          "lower": -0.07693041569123779,
          "upper": 0.3947412755929648
        },
        {
          "method": "Sun\u2013Abraham",
          "estimate": 0.12334687831890981,
          "se": 0.12200052276134092,
          "pvalue": 0.3253979494519957,
          "lower": -0.1329667088713198,
          "upper": 0.37966046550913946
        }
      ],
      "event_studies": {
        "Dynamic TWFE": [
          {
            "event_time": -3,
            "estimate": -0.06507165024972078,
            "se": 0.15976097893174915,
            "pvalue": 0.6885860668357664,
            "lower": -0.4007170120579167,
            "upper": 0.27057371155847515
          },
          {
            "event_time": -2,
            "estimate": -0.2549168211929761,
            "se": 0.13985123176277278,
            "pvalue": 0.0849929155705281,
            "lower": -0.548733356358243,
            "upper": 0.038899713972290806
          },
          {
            "event_time": 0,
            "estimate": 0.057723291769215215,
            "se": 0.10961031918119164,
            "pvalue": 0.6048851496749778,
            "lower": -0.17255944363640535,
            "upper": 0.28800602717483575
          },
          {
            "event_time": 1,
            "estimate": 0.22486265134071956,
            "se": 0.12931666743963596,
            "pvalue": 0.0991346753927234,
            "lower": -0.046821585453732245,
            "upper": 0.49654688813517134
          },
          {
            "event_time": 2,
            "estimate": 0.25742082695509483,
            "se": 0.17734720190762474,
            "pvalue": 0.16384518628824787,
            "lower": -0.1151718183077115,
            "upper": 0.6300134722179012
          }
        ],
        "BJS / did2s": [
          {
            "event_time": -3,
            "estimate": 0.05323288618792928,
            "se": 0.04298863852897122,
            "pvalue": 0.23151195559992913,
            "lower": -0.037082891977541436,
            "upper": 0.1435486643534
          },
          {
            "event_time": -2,
            "estimate": -0.06011702933610721,
            "se": 0.05143364220504294,
            "pvalue": 0.25772033170859165,
            "lower": -0.1681751018545536,
            "upper": 0.04794104318233918
          },
          {
            "event_time": -1,
            "estimate": 0.022614397827353173,
            "se": 0.02769915272255568,
            "pvalue": 0.42492833788092255,
            "lower": -0.035579362623466615,
            "upper": 0.08080815827817296
          },
          {
            "event_time": 0,
            "estimate": 0.10246369727705186,
            "se": 0.12928692351729462,
            "pvalue": 0.4383734384521629,
            "lower": -0.16915804985538985,
            "upper": 0.37408544440949354
          },
          {
            "event_time": 1,
            "estimate": 0.24021603355677898,
            "se": 0.1369962622345579,
            "pvalue": 0.09653717784882601,
            "lower": -0.0476024332024447,
            "upper": 0.5280345003160026
          },
          {
            "event_time": 2,
            "estimate": 0.14815955029241065,
            "se": 0.13467901557730602,
            "pvalue": 0.28578667382769535,
            "lower": -0.1347905618919177,
            "upper": 0.431109662476739
          }
        ],
        "Sun\u2013Abraham": [
          {
            "event_time": -3,
            "estimate": -0.03974792509906768,
            "se": 0.22240085518847694,
            "pvalue": 0.8601522083052371,
            "lower": -0.5069947835329943,
            "upper": 0.427498933334859
          },
          {
            "event_time": -2,
            "estimate": -0.024820748461187342,
            "se": 0.16159376523103,
            "pvalue": 0.8796343202533436,
            "lower": -0.3643166514005942,
            "upper": 0.3146751544782196
          },
          {
            "event_time": 0,
            "estimate": 0.019330720775350085,
            "se": 0.11851788518319593,
            "pvalue": 0.8722539203692906,
            "lower": -0.22966611636878304,
            "upper": 0.2683275579194832
          },
          {
            "event_time": 1,
            "estimate": 0.3180181374199935,
            "se": 0.14199154606024256,
            "pvalue": 0.03797228118101691,
            "lower": 0.01970496877412936,
            "upper": 0.6163313060658577
          },
          {
            "event_time": 2,
            "estimate": 0.01863560474762408,
            "se": 0.19113650685969083,
            "pvalue": 0.923407642851141,
            "lower": -0.38292729520858276,
            "upper": 0.42019850470383097
          }
        ]
      },
      "target": {
        "event_times": [
          0.0,
          1.0,
          2.0
        ],
        "weights": [
          0.4672566371681416,
          0.3486725663716814,
          0.184070796460177
        ],
        "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.041036567996504e-15
      },
      "inference": {
        "standard_errors": "Cluster-robust; did2s uses two-stage covariance",
        "confidence_intervals": "Pointwise t, clusters minus one degrees of freedom"
      },
      "f_test": {
        "F": 2.4954019142115147,
        "df_num": 1,
        "df_den": 1100,
        "pvalue": 0.11446671685987606,
        "log10_pvalue": -0.9413207734582845,
        "inference": "Homoskedastic nested-model F",
        "observations": 1131,
        "design_columns": 9,
        "restricted_design_columns": 8,
        "fixed_effect_rank": 22,
        "covariance_rank": 1,
        "rss_unrestricted": 1092.0542199627894,
        "rss_restricted": 1094.5315964999875,
        "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.14892695773201645,
              -0.16483447373738153,
              -0.02024910408185077,
              -0.09471998423451741,
              -0.1530585981979471,
              -0.21798469170611923
            ],
            [
              -0.14892695773201645,
              -0.16483447373738153,
              -0.02024910408185077,
              -0.09471998423451741,
              -0.1530585981979471,
              -0.21798469170611923
            ],
            [
              -0.14892695773201645,
              -0.16483447373738153,
              -0.02024910408185077,
              -0.09471998423451741,
              -0.1530585981979471,
              -0.21798469170611923
            ],
            [
              -0.14892695773201645,
              -0.16483447373738153,
              -0.02024910408185077,
              -0.09471998423451741,
              -0.1530585981979471,
              -0.21798469170611923
            ],
            [
              -0.14892695773201645,
              -0.16483447373738153,
              -0.02024910408185077,
              -0.09471998423451741,
              -0.1530585981979471,
              -0.21798469170611923
            ]
          ]
        },
        "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_fe+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.9967121532098238
          },
          {
            "event_time": 0.0,
            "cohort": 3,
            "estimate": 1.1575487141238436
          },
          {
            "event_time": 1.0,
            "cohort": 3,
            "estimate": 0.5897452541268026
          },
          {
            "event_time": 0.0,
            "cohort": 4,
            "estimate": 0.3653465582033075
          }
        ]
      }
    }
  },
  "code_sha256": {
    "replication_engine.py": "aa5b4502ce913299533b0c0035000b0770df1c69af7de25b04aa0c8532a3ddca",
    "reference_f_test.py": "9cf8f31eeda89784ac1750ea22c35401ae46e24e06279acf938d2d103b78cccf",
    "sparse_did2s.py": "75169d7fbba6e1bad163e564ac9b5b1262a04033eda925dc379dc3eef64c59fa",
    "frequency.py": "8f922ae4be2b63ad9b89515d8e665cda4e11a354258b54ef3b820648243642eb"
  }
}
