Skip to content

simd2020v2_education_domain_vigintile

Scottish Government SIMD 2020v2 education domain vigintile, unweighted, 1 = most deprived; copied exactly as published on statistics.gov.scot, never derived; the publisher places some tied zones in adjacent bands

What the education domain measures (indicators in the Scottish Government's SIMD 2020v2 glossary; earlier editions' indicators differ in detail):

  • School pupil attendance (EduAttend, percentage; SIMD 2020v2 glossary; reviewed (AI-assisted review, 2026-10-02, record))
  • Attainment of school leavers (EduAttain, score; SIMD 2020v2 glossary; reviewed (AI-assisted review, 2026-10-02, record))
  • Working age people with no qualifications (EduNoQuals, standardised ratio; SIMD 2020v2 glossary; reviewed (AI-assisted review, 2026-10-02, record))
  • Proportion of people aged 16-19 not participating in education, employment or training (EduNotPart, percentage; SIMD 2020v2 glossary; reviewed (AI-assisted review, 2026-10-02, record))
  • 17-21 year olds entering university as a proportion of the 17-21 population (EduUniver, percentage; SIMD 2020v2 glossary; reviewed (AI-assisted review, 2026-10-02, record))
Table Type Nullable Category In the CSV export SQL Server type
history table (postcode_simd_history, SPD) int8 no Scottish Government published domain band yes tinyint
main table (postcode_simd, SSPL) int8 no Scottish Government published domain band yes tinyint

Provenance (the same in both tables)

Each table runs its own copy of the table-level checks, named .history. and .main..

Where it comes from

Input Field Condition Reaches the row by
statistics.gov.scot/simd_2020.csv (pinned, SHA256 25fea7ddaf54…) Value SIMD Domain = Education Skills And Training, Measurement = Vigintile, DateCode = 2020 DataZone2011Code = FeatureCode
data.gov.uk/SG_SIMD_2020/SG_SIMD_2020.dbf (pinned, SHA256 3eb0f27aa4aa…) edurank: Education domain rank (SIMD 2020v2 glossary; reviewed (AI-assisted review, 2026-10-02, record)) the rank the published rank must equal, or differ from as declared DataZone2011Code = datazone

Scope: the row itself.

What was done to it: copied (gated). The Scottish Government's published band, copied, never derived; admitted only where the published rank is the shapefile's. (code: simd_ingest/core/govscot.py: read_published_bands)

How it is checked (what each check tests; whether a build passed it is in that build's manifest.json["checks"])

  • source.hash.statistics.gov.scot/simd_2020.csv: the pinned file's SHA256 equals the registry's: the bytes are exactly the ones reviewed
  • govscot.2020v2.bands.years: the band file holds exactly the years the registry declares for it
  • govscot.2020v2.bands.education.zones: every zone of the edition is published once for the domain
  • govscot.2020v2.bands.education.ranks_agree: every published rank equals the shapefile rank, or differs only in a declared way
  • join.<table>.gov.2020v2.every_record_matched: every record found its data zone in the edition: no empty cell
  • readback.<table>.attached_values: every attached value in the saved file is looked up again from the sources and equal
  • govscot.2020v2.bands.education.vigintile.whole: every published band is a whole number
  • govscot.2020v2.bands.education.vigintile.range: every published band is within its range
  • govscot.2020v2.bands.education.vigintile.monotone: the published band never falls as the published rank rises (a split tie is allowed)
  • join.<table>.simd2020v2_education_domain_vigintile.range: every joined band is within its range

Why: simd-domain-bands, bands-are-looked-up