2025 Canadian federal election: riding competitiveness
One-off riding-grain intelligence from the 45th Canadian general election (2025-04-28): all 343 federal electoral districts with the winner, victory margin in votes and share points, runner-up, a documented competitiveness tier (tossup <2pp, marginal 2-5, competitive 5-10, comfortable 10-15, safe >=15), the effective number of parties (1/sum(share^2)), turnout from official elector rolls (void and never-held polls excluded), an incumbent_hold flag, and the minor-party vote share. Built from the keyless Elections Canada poll-by-poll Format 2 ZIP (343 riding CSVs, one row per candidate per poll): votes are summed to parties through a closed affiliation vocabulary, rejected ballots and electors are counted once per distinct poll, and the winner is read from the official Elected indicator (exactly one per riding; asserted). Primary key: riding_number; join keys: riding_number, riding_name_en, province, election_date. Caveats: tiers and ENP describe the 2025 result, not a forecast; riding boundaries are the 2023 Representation Order; independents pool into one ENP bucket. Who joins this: a media team joins competitiveness + margin_pp to a riding watchlist on riding_number; a demographics team joins turnout_pct to riding demographics on riding_number or riding_name_en + province.
Les titres et les descriptions proviennent des sources de données, en anglais.
- Lignes
- 343
- Colonnes
- 28
- Cadence de la source
- Annuelle
- Dernière actualisation
- 27 sept. 2026
- Thème
- government
| Colonne | Type | Description |
|---|---|---|
| election_date | string | Election day of the 45th general election: 2025-04-28. Part of the join keys with riding_number. (unit: ISO date) |
| country_code | string | Always CAN (ISO alpha-3). (unit: ISO alpha-3) |
| riding_number | integer | Elections Canada 5-digit electoral district number. Primary key; the join key for riding-level data. (unit: code) |
| riding_name_en | string | Electoral district name (English), verbatim from Elections Canada. (unit: text) |
| riding_name_fr | string | Electoral district name (French), verbatim from Elections Canada. (unit: text) |
| province | string | Province/territory from the two-digit district prefix (verified against the official 2025 seat allocation). (unit: text) |
| valid_votes | integer | Total valid votes cast for candidates in the riding, summed over all polls. (unit: votes) |
| ballots_cast | integer | valid_votes + rejected_ballots. (unit: ballots) |
| rejected_ballots | integer | Rejected ballots, counted once per distinct poll. (unit: ballots) |
| total_electors | integer | Registered electors, summed once per distinct non-void, held poll. Void and never-held polls are excluded by design. (unit: electors) |
| turnout_pct | float | 100 * ballots_cast / total_electors. Official elector rolls as denominator. (unit: percent) |
| polls_reporting | integer | Distinct polling divisions that were held (excludes void and never-held polls). (unit: count) |
| num_candidates | integer | Distinct candidates on the riding ballot. (unit: count) |
| winner_party_short | string | Winner's party short code from the connector's closed vocabulary (LPC/CPC/NDP/BQ/GPC/PPC/IND/…). (unit: code) |
| winner_party | string | Winner's affiliation string verbatim from Elections Canada. (unit: text) |
| winner_candidate | string | Elected candidate's name ('First Family'). (unit: text) |
| winner_share | float | Winner's party share of valid votes. (unit: percent) |
| runnerup_party_short | string | Runner-up party short code (empty in a one-party riding). (unit: code) |
| runnerup_candidate | string | Leading candidate of the runner-up party. (unit: text) |
| runnerup_share | float | Runner-up party share of valid votes. (unit: percent) |
| margin_votes | integer | Winner's party votes minus runner-up party votes. (unit: votes) |
| margin_pp | float | winner_share minus runnerup_share, in percentage points. (unit: pp) |
| competitiveness | string | tossup (<2pp) / marginal [2,5) / competitive [5,10) / comfortable [10,15) / safe (>=15). Describes the 2025 result; not a forecast. (unit: tier) |
| enp | float | Effective number of parties = 1/sum(share^2) over the normalized affiliation buckets (independents pooled). (unit: index) |
| incumbent_hold | boolean | True when the elected candidate was the incumbent; False when the seat changed hands or no incumbent ran. (unit: boolean) |
| minor_party_share | float | Share of valid votes outside the six major parties (LPC/CPC/NDP/BQ/GPC/PPC). (unit: percent) |
| row_hash | string | Deterministic 16-hex content hash over (riding_number, winner_party_short, winner_votes, valid_votes, margin_votes, turnout_pct) — identical input yields an identical snapshot. (unit: hash) |
| data_as_of | string | UTC date the snapshot was built. (unit: ISO date) |
10 premières lignes d’exemple — un aperçu, pas le jeu de données complet.
| election_date | country_code | riding_number | riding_name_en | riding_name_fr | province | valid_votes | ballots_cast | rejected_ballots | total_electors | turnout_pct | polls_reporting | num_candidates | winner_party_short | winner_party | winner_candidate | winner_share | runnerup_party_short | runnerup_candidate | runnerup_share | margin_votes | margin_pp | competitiveness | enp | incumbent_hold | minor_party_share | row_hash | data_as_of |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2025-04-28 | CAN | 10 001 | Avalon | Avalon | Newfoundland and Labrador | 47 030 | 47 419 | 389 | 70 859 | 66,92 | 227 | 4 | LPC | Liberal | Paul Connors | 58,61 | CPC | Steve Kent | 36,05 | 10 610 | 22,56 | safe | 2,102 | false | 0,49 | 3563226b91ab93d4 | 2026-09-27 |
| 2025-04-28 | CAN | 10 002 | Cape Spear | Cape Spear | Newfoundland and Labrador | 45 988 | 46 439 | 451 | 69 828 | 66,5 | 184 | 5 | LPC | Liberal | Tom Osborne | 68,25 | CPC | Corey Curtis | 25,75 | 19 544 | 42,5 | safe | 1,869 | false | 0,37 | dc5d97a6d99eb9dc | 2026-09-27 |
| 2025-04-28 | CAN | 10 003 | Central Newfoundland | Central Newfoundland | Newfoundland and Labrador | 40 636 | 41 128 | 492 | 64 095 | 64,17 | 254 | 3 | CPC | Conservative | Clifford Small | 54,08 | LPC | Lynette Powell | 43,55 | 4 279 | 10,53 | comfortable | 2,072 | true | 0 | e6e2ba3689a42a5e | 2026-09-27 |
| 2025-04-28 | CAN | 10 004 | Labrador | Labrador | Newfoundland and Labrador | 11 284 | 11 452 | 168 | 20 027 | 57,18 | 98 | 3 | LPC | Liberal | Philip Earle | 51,5 | CPC | Ella Wallace | 41,73 | 1 102 | 9,77 | competitive | 2,253 | false | 0 | ddd43c0139591c27 | 2026-09-27 |
| 2025-04-28 | CAN | 10 005 | Long Range Mountains | Long Range Mountains | Newfoundland and Labrador | 46 143 | 46 595 | 452 | 71 680 | 65 | 274 | 5 | CPC | Conservative | Carol Anstey | 50,35 | LPC | Don Bradshaw | 42,75 | 3 506 | 7,6 | competitive | 2,281 | false | 1,38 | 87d54eba2cc63a10 | 2026-09-27 |
| 2025-04-28 | CAN | 10 006 | St. John's East | St. John's-Est | Newfoundland and Labrador | 46 051 | 46 491 | 440 | 66 394 | 70,02 | 203 | 5 | LPC | Liberal | Joanne Thompson | 62,28 | CPC | David Brazil | 25,93 | 16 740 | 36,35 | safe | 2,138 | true | 0,21 | 5f7f191c37674c25 | 2026-09-27 |
| 2025-04-28 | CAN | 10 007 | Terra Nova--The Peninsulas | Terra Nova--Les Péninsules | Newfoundland and Labrador | 40 875 | 41 694 | 819 | 64 709 | 64,43 | 284 | 3 | CPC | Conservative | Jonathan Rowe | 47,96 | LPC | Anthony Germain | 47,93 | 12 | 0,03 | tossup | 2,167 | false | 0 | 1fc1d7c2ee162a14 | 2026-09-27 |
| 2025-04-28 | CAN | 11 001 | Cardigan | Cardigan | Prince Edward Island | 25 261 | 25 494 | 233 | 32 251 | 79,05 | 102 | 6 | LPC | Liberal | Kent MacDonald | 57,02 | CPC | James Aylward | 37,38 | 4 962 | 19,64 | safe | 2,147 | false | 1,6 | 39dc3ea47b486926 | 2026-09-27 |
| 2025-04-28 | CAN | 11 002 | Charlottetown | Charlottetown | Prince Edward Island | 21 089 | 21 303 | 214 | 28 003 | 76,07 | 86 | 5 | LPC | Liberal | Sean Casey | 64,75 | CPC | Natalie Jameson | 29,11 | 7 517 | 35,64 | safe | 1,976 | true | 0 | a53321f16e7e7af3 | 2026-09-27 |
| 2025-04-28 | CAN | 11 003 | Egmont | Egmont | Prince Edward Island | 24 008 | 24 249 | 241 | 31 387 | 77,26 | 109 | 4 | LPC | Liberal | Bobby Morrissey | 51,92 | CPC | Logan McLellan | 43,4 | 2 047 | 8,53 | competitive | 2,178 | false | 0 | fde16b11b51b9662 | 2026-09-27 |
- Actuelle
20260927T224149Z-b608821bb05f · sha256 b608821bb05f…
343 lignes · premier instantané
Dirigez n’importe quel LLM vers le point d’accès des métadonnées — la documentation ci-dessus est aussi lisible par machine (JSON-LD + Croissant).
curl "https://datazimuts.com/v1/datasets/ca_federal_election_2025_riding_intel/ca_federal_election_2025_riding_competitiveness" | jq '{title, rows, columns_count, license}'import requests
ds = requests.get("https://datazimuts.com/v1/datasets/ca_federal_election_2025_riding_intel/ca_federal_election_2025_riding_competitiveness").json()
print(ds["title"], ds["rows"], "rows")
# Sample rows for an LLM context window
for row in ds.get("sample_rows", [])[:5]:
print(row)Point d’accès API : https://datazimuts.com/v1/datasets/ca_federal_election_2025_riding_intel/ca_federal_election_2025_riding_competitiveness
Astuce : récupérez /llms.txt pour le catalogue complet lisible par machine.
D’où viennent ces données et ce qui en a été fait. Le travail des autres apparaît sous forme de décomptes ; seuls les projets partagés sont nommés.
Citer cet instantané
Épinglé à l’instantané 20260927T224149Z-b608821bb05f et à son empreinte, pour que vos lecteurs obtiennent exactement les données utilisées.
2025 Canadian federal election riding competitiveness (agent-curated). (2026). 2025 Canadian federal election: riding competitiveness [Data set, snapshot 20260927T224149Z-b608821bb05f, sha256 b608821bb05f]. Datazimuts. Retrieved 2026-09-28, from https://datazimuts.com/fr/datasets/ca_federal_election_2025_riding_intel/ca_federal_election_2025_riding_competitiveness?snapshot=20260927T224149Z-b608821bb05f
@misc{dz_ca_federal_election_2025_riding_intel_ca_b608821b,
title = {{2025 Canadian federal election: riding competitiveness}},
author = {{2025 Canadian federal election riding competitiveness (agent-curated)}},
year = {2026},
publisher = {Datazimuts},
howpublished = {\url{https://datazimuts.com/fr/datasets/ca_federal_election_2025_riding_intel/ca_federal_election_2025_riding_competitiveness?snapshot=20260927T224149Z-b608821bb05f}},
note = {Snapshot 20260927T224149Z-b608821bb05f, sha256 b608821bb05f3308bbdccb72824e0705dd460ef49bc0d3919e0185424a65529b; accessed 2026-09-28}
}Intégrer un tableau ou un graphique
Collez ce code dans n’importe quelle page. L’intégration est épinglée au même instantané, suit le thème clair ou sombre du lecteur et affiche toujours la source, la licence et un lien de retour.
<iframe src="https://datazimuts.com/embed/chart?dataset=ca_federal_election_2025_riding_intel%2Fca_federal_election_2025_riding_competitiveness&lang=fr&theme=auto&snapshot=20260927T224149Z-b608821bb05f&x=election_date&y=riding_number&agg=avg" title="2025 Canadian federal election: riding competitiveness" width="100%" height="380" style="border:0" loading="lazy"></iframe>
Posez une question sur ce jeu de données. Les réponses viennent uniquement de sa fiche, de son profil mesuré et de son historique, et citent les faits utilisés.