← Back to story

PhiladelphiaDiscipline & climateMethodology recipe

Where Philly's chronic-suspension tail moved 2019-20 to 2024-25

A reproducibility log: the data this analysis touched, the queries it ran, and how a third party would re-run it.

Summary

Per-school time series of `oss_pct_chronic` across the 6 published years. Highlights schools persistently at the top of the chronic-suspension distribution.

Data sources

  • Database tablephilly_school_year_metrics

    Long-format facts. PK (school_ulcs, year, metric_key, subgroup, population_cut). Carries comparison_group_percentile + citywide_percentile (direction-adjusted).

  • External datasetSDP School Performance (OpenDataPhilly CDN)

Steps

  1. Time series for the current top-3.

    SELECT s.name, m.year, m.value FROM philly_schools s
    JOIN philly_school_year_metrics m ON m.school_ulcs = s.ulcs_code
    WHERE m.metric_key='oss_pct_chronic' AND m.subgroup='ALL'
      AND s.name IN ('GROVER WASHINGTON JR. MIDDLE', 'STRAWBERRY MANSION HIGH SCHOOL', 'MURRELL DOBBINS HIGH SCHOOL')
    ORDER BY s.name, m.year;

Caveats

2020-21 (COVID year) values are anomalously low across the board.

Reproduce

OSS loader already in DB. Query above.

The recipe lives at data/cities/philly/stories/recipes.ts in the repo.