Czech Legislative Elections 2021 Post-Mortem (Plus some future developments)
The 2021 Czech Legislative Elections post-mortem
It's fun to make models but just like when cooking you have to clean the kitchen afterwards. Without looking at what went right/wrong you can't improve! So here we're going to look at and evaluate how wrong I was.
Top line Results
First let's look at how the election actually went in comparison to the results from the 2017 election1. Politically speaking this election changes government from the centrist populist (likely corrupt) Prime Minister Andrej Babis will transfer power to the Centre-right conservative coalition SPOLU ("Together") making Petr Fiala the new Prime Minister Designate SPOLU who made an agreement with the centrist liberal coalition Pirates and Mayors will have the votes of the majority of the Chambre of Deputees.
Although the Czech president Milos Zeman has shown that he will be giving the new government any leeway
Looking at the seat count we see the clear picture of how close this election ANO keeping its plurality but SPOLU only being beat by 1 seat. Pirates and Mayors gain a modest increase in seats although much lower than what could've been as they had a large polling lead earlier in the campaign. The results for the Far-Right SPD were underwhelming as they made no ground at all losing moderate amount of seats and vote share. The anti-corruption party "Oath" although didn't gain any seats still had a large showing that if they can organize and prepare for the upcoming senate elections could serve for their future success.
The losers of this election pretty squarely are on the Czech left. The Left saw their vote share slashed to such an extent that the CSSD (Social Democratic Party) which had made government only a bit more than half a decade ago along with many times before, nor the KCSM (Communist Party) which ruled during the cold war and was at least had an opposition since the beginning democratic era failed to hold on to a single seat. The future of those parties is uncertain facing their own challenges and choices.
How well the "model" did
Now for where I come into this story, how do these results compare to my prediction? Okay...ish. Ideally I should use a proper scoring rule to a more comparable evaluation to future predictions but since I didn't do a probabilistic model scoring we will have to rely on simply looking at how close it was to the result.
Here is a reminder of what I actually predicted and a breakdown of the difference in my prediction to what happened.
As we can see here I got somewhat close although vastly underestimating SPOLU, giving minor underselling of ANO as they held on well. I moderately overestimated the SPD and new Oath party, well overestimating the communist party. I slightly overestimated Social Democratic Party and Pirates and Mayors coalition. Now looking at this you could conclude that I only called net 24 seats incorrectly, 88% accuracy rate. But that logic is a bit misleading because I didn't only get it wrong in one direction.
For example, I net overestimated Pirates and Mayors 2 seats so pretty close. More is revealed if you look at the region by region data. Using Pirates and Mayors as an example I might've only net gotten 2 wrong but in fact I got in fact 4 wrong in total for that coalition. I got it in wrong in 4 regions, in 3 of them I over-estimated and in one I underestimated thus getting a net of -2.
Graphing the seats won by the predicted seats we get a graph like this
Each dot represents a region2, the dotted line represents the accurate relation where the predicted and actual are equal. Let's look if add all parties from all regions
As you can see ANO and SPOLU at the upper end do consistently better than the prediction. Well if you look at Pirates, SPD and the Communist Party there is a clear consistent trend under the line.
Now we can account for this and find the real error it's 26 wrong calls out of 200 which is 87% rate. Now in my rubrik 3 this means a B- but since I was 2 days late I'm taking 10% off so overall it's a C.
Now what if we do this for vote share?
As you can see SPOLU is far above the line quite consistently especially in the upper reaches where it got 40% over 5% from where it was predicted, something shared only by the Tri-colour movement coalition. The groups who did as well as expected were the Social Demcorats and ANO who straddle the line. Those who did worse than expected in terms of vote share include Pirates, SPD and The Communist Party.
Overall the mean error for major parties4 was 2.65 not awful but leaving much to be desired in.
Accuracy. So 2.65 mean error and 87% seat accuracy where did it go wrong? My model worked that it would take national
polling and use a proportional swing region by region to determine what the expected vote would be in each region. Taking
that expected vote using the apportionment rules used by the Czech electoral system it's easy to find the seats.
Where I would look first to find error in this is the proportional swing, that is how close was the ratio we used between the national result and the regional result. For example if in Prague ANO got 20% compared to nationally where they got 40%, that is a proportional swing of 0.5 because they got half. I used these ratios from the 2017 election to determine how they would distribute from our knowledge of national polling.
As you can see for the major parties the ratios were pretty consistent and the mean difference of major parties was 0.05 5. So all in all pretty darn close in extrapolating polling to regional results. The other way in which something can be wrong is in this model is the input polling, which let's see how off that was.
The Polling
The 2021 Czech Polling average (Taken from mandaty.cz/) final average was this
The polling was off by a mean error of 1.85% (2.37% for major parties) but doing a party breakdown tells a more full picture. That although the polls were fairly accurate overall mostly ~1% of the final vote, in particular SPOLU was massively off by over 6%.
This is by no short order a pretty huge polling error are reasonable bounds generally is 3% and at worst 5% but the fact that so many votes broke for SPOLU made it hard to predict that they would come away on election night with a new government although the trend was there.
Future
It has been 2 months since the Czech 2021 election and it is not because I wanted some distance of what happened to give my post-mortem but because of laziness and general putting off doing the important work. I wanted to the Chile 2021 general election in November but my own procrastination prevented me from it. Luckily there are lots of things to do between elections!
My general plan is to look at 8 countries; Canada, Czechia, Taiwan, Tunisia6, Mauritius and Papua New Guinea. All of these have interesting electoral systems along with vastly different histories, cultures and relationships to their democracy. Which means that the next year we have 3 guaranteed elections; Papua New Guinea has their tenth general election, In Canada we have the provincial elections of Ontario, in Czechia we have the senate elections with potentially Tunisian election coming in 2022 as well. I also want to explore interesting questions about electoral systems and actions! So stay tuned!
Thank you for reading and I hope you have as much as I do talking about these things.
Footnotes
1: Note I retrofitted the 2017 Results to the 2021 Coalitions which did not exist pre-2020 but for clarity I edited it to match to the 2021 results.
2: You might be wondering why dots are faded and there is one that looks like solid black. For ease of seeing when dots stack up they are somewhat transparent. This probably wasn't the best way to represent the data since the dots stack upon each other and the non-granularity of the seats makes it hard to see it fully.
3: My personal grading sheet on the accuracy is
Accuracy % | Grade |
---|---|
000-049 | F |
050-069 | D |
070-084 | C |
085-094 | B |
095-100 | A |
With -/+ being if you get into the bottom/top quarter
4: I shouldn't really get points for correctly guessing that parties like the Greens got low amount of votes. Including Tricolour movement, Greens, Oath and simply other the mean error goes down to 2.05.
5: The way in which this heatmap measures the difference between predicted swing and actual swing not the proportional difference. This might not be the best measure because a 0.1 difference in 0.5 is much more impactful than a 0.1 difference in 1.8, but I think absolute swing difference paints a more easily understood picture.
6: Tunisia's Democracy has come into threat and question with President Kais Saied's consolidation of power which could very well put Tunisia back into a state of autocracy which awful. There is hope! even potentially an election earlier than 2023 but I understand it's possible future may not be democratic.