{
  "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": "Teaching focused on gaokao",
      "d": "New Curriculum indicator (newcurr)"
    },
    "allow_repeated_cells": true,
    "time_fe": null,
    "latest_cohort_control": true,
    "slug": "s01-p103",
    "study_id": 1,
    "study": "Curriculum and Ideology",
    "citation": "Cantoni et al. (2017), JPE. https://doi.org/10.1086/690951",
    "description": "Teaching focused on gaokao",
    "source_specification_id": "CI-T6-C06",
    "specification_id": "S01-P103",
    "data": "repl-archives/twfe-microdata-replication-private/outputs/published_clustering_2026_10_08/curriculum/prepared_rows/CI-T6-C06.csv",
    "output_dir": "analyses/full-archive/results/S01-P103"
  },
  "source": {
    "file": "CI-T6-C06.csv",
    "bytes": 185802,
    "sha256": "8bb15d7e37f19f9d246c087bf22df952f48c87eb76a1327357c891a547da855a"
  },
  "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": 1691,
        "source_sd": 0.8673415176755196,
        "rows": 1061,
        "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.16694748969678513,
          "se": 0.12204862005314436,
          "pvalue": 0.18818665211512023,
          "lower": -0.08946714615387019,
          "upper": 0.42336212554744046
        },
        {
          "method": "Dynamic TWFE",
          "estimate": 0.04004900561519449,
          "se": 0.1080625070799994,
          "pvalue": 0.7152537124862607,
          "lower": -0.1869818972328795,
          "upper": 0.26707990846326846
        },
        {
          "method": "BJS / did2s",
          "estimate": 0.13739603194101255,
          "se": 0.10544110113133452,
          "pvalue": 0.2089779775891876,
          "lower": -0.08412750137309241,
          "upper": 0.3589195652551175
        },
        {
          "method": "Sun\u2013Abraham",
          "estimate": 0.05493625656459516,
          "se": 0.100395822757991,
          "pvalue": 0.5909641658106333,
          "lower": -0.15598754021580094,
          "upper": 0.26586005334499124
        }
      ],
      "event_studies": {
        "Dynamic TWFE": [
          {
            "event_time": -3,
            "estimate": 0.3823737051675476,
            "se": 0.1181739520712666,
            "pvalue": 0.0045877928430706275,
            "lower": 0.1340994446786355,
            "upper": 0.6306479656564596
          },
          {
            "event_time": -2,
            "estimate": -0.013735314302652688,
            "se": 0.09845117105486434,
            "pvalue": 0.8905931827496744,
            "lower": -0.22057354945935773,
            "upper": 0.19310292085405237
          },
          {
            "event_time": 0,
            "estimate": 0.08631335419583328,
            "se": 0.1146366267236997,
            "pvalue": 0.4612266903467558,
            "lower": -0.15452926150687224,
            "upper": 0.3271559698985388
          },
          {
            "event_time": 1,
            "estimate": 0.0707362999624916,
            "se": 0.11739643132515055,
            "pvalue": 0.5543291291040148,
            "lower": -0.1759044500541606,
            "upper": 0.31737704997914384
          },
          {
            "event_time": 2,
            "estimate": -0.1353930205974852,
            "se": 0.1862733388063968,
            "pvalue": 0.476664422962649,
            "lower": -0.5267387836051305,
            "upper": 0.2559527424101601
          }
        ],
        "BJS / did2s": [
          {
            "event_time": -3,
            "estimate": 0.1467923827720748,
            "se": 0.05230481446090216,
            "pvalue": 0.011673471347748897,
            "lower": 0.03690404526044726,
            "upper": 0.2566807202837023
          },
          {
            "event_time": -2,
            "estimate": -0.07656433993588815,
            "se": 0.03715338572866992,
            "pvalue": 0.0540778292965396,
            "lower": -0.15462070688282764,
            "upper": 0.0014920270110513334
          },
          {
            "event_time": -1,
            "estimate": 0.01191806440380757,
            "se": 0.02029339599427498,
            "pvalue": 0.5643053515415729,
            "lower": -0.030716778511903936,
            "upper": 0.054552907319519076
          },
          {
            "event_time": 0,
            "estimate": 0.1411201312426974,
            "se": 0.131674425913282,
            "pvalue": 0.2979989210128895,
            "lower": -0.13551757229460243,
            "upper": 0.41775783477999723
          },
          {
            "event_time": 1,
            "estimate": 0.16629113610685275,
            "se": 0.09696034456504514,
            "pvalue": 0.10350149404907373,
            "lower": -0.037414988819215955,
            "upper": 0.36999726103292147
          },
          {
            "event_time": 2,
            "estimate": 0.07262591530015494,
            "se": 0.16289646316844678,
            "pvalue": 0.6610284375427631,
            "lower": -0.2696068544477474,
            "upper": 0.4148586850480573
          }
        ],
        "Sun\u2013Abraham": [
          {
            "event_time": -3,
            "estimate": 0.28209931062210974,
            "se": 0.2186270997528234,
            "pvalue": 0.21326900733769552,
            "lower": -0.17721918184257301,
            "upper": 0.7414178030867925
          },
          {
            "event_time": -2,
            "estimate": 0.02494562453256309,
            "se": 0.10192794975443382,
            "pvalue": 0.8094276826893363,
            "lower": -0.18919705162310807,
            "upper": 0.23908830068823422
          },
          {
            "event_time": 0,
            "estimate": 0.07725579056503747,
            "se": 0.10575614487605388,
            "pvalue": 0.4744809637572492,
            "lower": -0.14492962509598845,
            "upper": 0.2994412062260634
          },
          {
            "event_time": 1,
            "estimate": 0.10497836602192948,
            "se": 0.12511437324753924,
            "pvalue": 0.41244122397311606,
            "lower": -0.15787717828476946,
            "upper": 0.36783391032862844
          },
          {
            "event_time": 2,
            "estimate": -0.09724161185474386,
            "se": 0.19800127801384249,
            "pvalue": 0.6292786499914345,
            "lower": -0.5132268608299189,
            "upper": 0.3187436371204311
          }
        ]
      },
      "target": {
        "event_times": [
          0.0,
          1.0,
          2.0
        ],
        "weights": [
          0.46360153256704983,
          0.3524904214559387,
          0.1839080459770115
        ],
        "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.2511452540497195e-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.6158973760576137,
        "df_num": 1,
        "df_den": 1030,
        "pvalue": 0.4327564058760361,
        "log10_pvalue": -0.3637564947615839,
        "inference": "Homoskedastic nested-model F",
        "observations": 1061,
        "design_columns": 9,
        "restricted_design_columns": 8,
        "fixed_effect_rank": 22,
        "covariance_rank": 1,
        "rss_unrestricted": 908.662182537426,
        "rss_restricted": 909.2055249198994,
        "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.1416726041825442,
              -0.17329696928466512,
              -0.008638234490561806,
              -0.10117543195037146,
              -0.15443480981982952,
              -0.22192198190561663
            ],
            [
              -0.1416726041825442,
              -0.17329696928466512,
              -0.008638234490561806,
              -0.10117543195037146,
              -0.15443480981982952,
              -0.22192198190561663
            ],
            [
              -0.1416726041825442,
              -0.17329696928466512,
              -0.008638234490561806,
              -0.10117543195037146,
              -0.15443480981982952,
              -0.22192198190561663
            ],
            [
              -0.1416726041825442,
              -0.17329696928466512,
              -0.008638234490561806,
              -0.10117543195037146,
              -0.15443480981982952,
              -0.22192198190561663
            ],
            [
              -0.1416726041825442,
              -0.17329696928466512,
              -0.008638234490561806,
              -0.10117543195037146,
              -0.15443480981982952,
              -0.22192198190561663
            ]
          ]
        },
        "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.5451026139549813
          },
          {
            "event_time": 0.0,
            "cohort": 3,
            "estimate": -0.10247205266179327
          },
          {
            "event_time": 1.0,
            "cohort": 3,
            "estimate": 0.2815124982072382
          },
          {
            "event_time": 0.0,
            "cohort": 4,
            "estimate": -0.26505972591089155
          }
        ]
      }
    }
  },
  "code_sha256": {
    "replication_engine.py": "85957b22db6cf6312f27a925b03b907e4d51071cc59a60cfdf2d7b039b1e34eb",
    "reference_f_test.py": "26f3d65e1ff59d46f05bb28011b2ed34b9ee150f04c47c144dd6836a4d75d6f0",
    "sparse_did2s.py": "a348042269b0077dd2916898779f992f0b5fc2971edfee8b0118d3af715eaafb"
  }
}
