SPB Git

spb/wp29_uqo

Public

# F2-conf-01 — School-level programme effect on student scores

# Question

A programme was assigned to whole schools. We estimate τ, the difference between the student-weighted mean score in treated and control schools (OLS slope of score on treated with an intercept), give an uncertainty measure that respects the school-level design, and test H0: τ = 0 at the 5% level (two-sided).

# Data and exclusions

Input: data/schools.csv, 1000 rows (n_input_rows), simulated data. Audit (out/state/data_audit.md): no missing values, no duplicates, unique student IDs, 40 schools (n_schools) of exactly 25 students (school_size), treatment constant within school, 20 treated schools (n_treated_schools). No rows excluded (out/exclusions.csv); n_analysed = 1000. data_issues is empty.

# Method

  • Point estimate: OLS of score on treated with intercept (tau_hat).
  • Naïve baseline: conventional homoskedastic iid OLS SE (se_iid).
  • Main uncertainty: cluster-robust (Liang–Zeger, CR1 small-sample correction) SE clustered by school_id (se_cluster). Test statistic and 95% CI use a t distribution with G−1 = 39 df (df_cluster), which is appropriate with a moderate number of clusters.
  • ICC: one-way random-effects ANOVA estimator on the OLS residuals, with G−2 between-school df (one lost to the treatment effect) (icc_hat).
  • Sensitivity: two-sample t-test on the 40 school means (sens_school_means_se, sens_school_means_p).
  • Deterministic; no randomness (random_seed = null).

# Results

  • tau_hat = 0.961 points (treated mean 51.28 mean_treated vs control 50.32 mean_control).
  • se_cluster = 0.729; t = 1.32 (t_stat_cluster); p_value = 0.195.
  • 95% CI: [tau_ci_low = −0.513, tau_ci_high = 2.436].
  • effect_significant_5pct = false: the data do not support a non-zero effect at the 5% level.
  • icc_hat = 0.240; implied design effect 6.77 (design_effect_from_icc).

# Uncertainty

The naïve se_iid = 0.282 would give p = 0.0007 (p_value_iid) and a spurious "significant" result. Because the programme varies only between schools and students in a school share school-level shocks, the effective sample is closer to 40 schools than 1000 students: the clustered SE is 2.58× larger (se_ratio_cluster_over_iid), consistent with √(design effect) ≈ 2.60. The school-means t-test gives the same conclusion (SE 0.738, p = 0.201). Verification checks are listed in out/state/checks.md.

# Limitations and open issues

  • Not rejecting H0 does not mean the effect is zero; the CI is compatible with effects from about −0.5 to +2.4 points.
  • With 40 clusters, CR1 with t(39) is a standard and reasonably accurate choice; wild-cluster bootstrap was not used (not required; balanced design makes CR1 ≈ school-means t-test, which was checked).
  • Causal interpretation relies on the school assignment being as-good-as-random, as in the simulated design; no covariates were available.
  • The data are synthetic.
Files · main
Menu

Theme