What this pack is
2 contests, 349 people, 80 poll response rows, 14,968 result rows and 0 money edges, built 2026-09-03.
The cycle phase shown on every contest is computed from the election date and how well that date is known. The corpus carries its own status column; it disagrees with the derived phase on 20 of the 61 contests across all twenty-two countries, so it is carried through but never read.
Money rows and result rows are held off the site at their full grain: the staged corpus is 156 MB. What is published here is the aggregate computed once at build time, and every aggregate states the number of rows it stands for.
Everything known to be wrong or limited
licence · grain · method
- vote_share in this pack is a FRACTION of 1 (largest observed 0.35129), not a percentage. India and Nigeria file percentages; the rest file fractions.
- 10 rows in results.csv had a field count differing from the header - an unquoted comma inside a quoted field shifted every later column - and were dropped rather than padded, because the values present were under the wrong names. Counts here are of the rows that parsed.
Rows that would not parse
- results.csv: 10 dropped.
The pack's own record
every URL fetched, every inclusion and exclusion
SOURCES.md
- Valmyndigheten: https://www.val.se/val-och-folkomrostningar/riksdags-region-och-kommunfullmaktigeval-2026.html — official 2026 election calendar. - Valmyndigheten: https://www.val.se/valresultat/2022.html — official 2022 results portal. - Riksdagens öppna data: https://data.riksdagen.se/ — 349-member JSON roster. - Novus: https://novus.se/valjarbarometer-arkiv/2026-08-novus-valjarbarometer/ — latest published August 2026 topline. - CLEA Release 18: https://www.icpsr.umich.edu/web/ICPSR/studies/39687 — 2022 constituency/candidate returns.
HANDOFF.md
# swe elections pack handoff Written 2026-09-03 for Cartevoir. Sweden has 2 elections: swe-riksdag-2026 (2026-09-13, confirmed_official, imminent) and swe-riksdag-2022 (2022-09-11, confirmed_official, sitting). people.person_id is the official Riksdag intressent_id prefixed swe-. The roster contains 349 current Riksdag members; bios are blank rather than authored. money-edges.csv is header-only: Kammarkollegiet disclosures were not obtained in machine-readable form; no amounts were invented. polls.csv contains the latest Novus published topline (8 option rows; field dates 2026-08-03 through 2026-08-16; sample 5617; MoE not printed in cited table). results.csv is CLEA Release 18, 14,978 rows, constituency/candidate grain. Join results on election_id and constituency_id; join people only on official person_id. CLEA does not provide Riksdag intressent IDs, so result person_id is blank. Source licenses/terms require downstream review before republication; CLEA citation is Kollman et al., Release 18, ICPSR 39687. ## 2026-09-03 repair: polls.csv enrichment Appended 72 option-rows to `polls.csv` (preserving the original 8 Novus rows), bringing it to 80 rows across 10 distinct survey waves from 7 institutes: Novus, Demoskop, Verian, Ipsos, Indikator Opinion, SCB (Statistics Sweden, Partisympatiundersökningen), and Sentio. Field dates run from early August through the final pre-election weeks; most recent field_end is 2026-09-01, twelve days before the 2026-09-13 vote. All rows use `swe-riksdag-2026`, which exists verbatim in `elections.csv`. Sifo/Kantar Public was searched but no cleanly citable 2026 topline table was found in the time available, so it was not included — no data was invented to fill the gap. `moe` and `sample_n` are blank wherever the publishing outlet did not print them (e.g. some Demoskop/DN tables report only party shares without a stated margin of error). `results.csv` was re-evaluated for a val.se upgrade. Valmyndigheten's "rådata" 2022 packages are aggregate/party or personal-vote-count (`personröster`) files, not a party×constituency×candidate file carrying total votes, vote share and seats comparable to CLEA's grain, and none of them carry a Riksdag `intressent_id` to join against `people.csv` — building that join would require fuzzy name-matching ~7,000 candidate rows against 349 members, which is not a "cheap" upgrade. Per the repair brief, CLEA Release 18 (14,978 rows, unchanged) stays in place with its existing `CLEA (Kollman et al., Release 18, ICPSR 39687)` citation. `STATS.json` regenerated from the files as they stand. Data-quality note (found, not altered): 10 of the 14,978 CLEA rows in `results.csv` (e.g. `swe-109917`, `swe-111884`, `swe-111889`, `swe-116331`, `swe-116338`) are short one column — independent/minor-party candidates (e.g. "Panos Alepliotis,SKP,", "Per-Olof Jönsson,SKP,") whose `party` field appears to have been dropped rather than left empty during the original CLEA-to-CSV conversion, shifting `votes`/`vote_share`/`seats`/`source`/`source_url` left by one and leaving `license` blank for just those rows. This predates this repair session (results.csv was not rewritten) and is left as-is rather than guessed at; flagging here since it's a first-class layer per SCHEMA.md.
Licences on the rows
- CLEA Release 1814,968
- Riksdagens öppna data349
- Demoskop published table (commissioned by Aftonbladet/Svenska Dagbladet)24
- Novus published table16
- Verian/SVT published table8
- Ipsos/DN published table8
- Indikator Opinion published table (commissioned by Sveriges Radio Ekot)8
- SCB official statistics (öppen statistik)8
- Sentio published table (commissioned by Riks)8