<?xml version="1.0" encoding="utf-8" standalone="yes"?><?xml-stylesheet href="/feed.css?v=208f42b55cff" type="text/css"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:site="https://lalitm.com/feed/ns#"><channel><title>Lalit Maganti (Tag: Data-Analysis)</title><link>https://lalitm.com/tags/data-analysis/</link><description>Recent content tagged Data-Analysis on Lalit Maganti</description><site:notice>This is a feed.
Feeds let you subscribe to updates from this site using a feed reader. Copy this page's URL from your address bar and paste it into your reader.
New to feeds? Read: https://aboutfeeds.com</site:notice><docs>https://aboutfeeds.com</docs><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Sun, 17 May 2026 15:30:00 +0100</lastBuildDate><atom:link href="https://lalitm.com/tags/data-analysis/index.xml" rel="self" type="application/rss+xml"/><item><title>Which country voted the best at Eurovision?</title><link>https://lalitm.com/post/which-country-voted-best-at-eurovision/</link><pubDate>Sun, 17 May 2026 15:30:00 +0100</pubDate><guid>https://lalitm.com/post/which-country-voted-best-at-eurovision/</guid><description>Eurovision was on yesterday. I’ve never been interested much in the musical side but the weird political dynamics of Eurovision voting have always fascinated me; I tune in each year just for them and somewhat snarky commentary of Graham Norton, the UK commentator.
As I was watching the jury votes come in, a question popped into my head: Which country has voted the best in Eurovision? That is, which country was best at picking the eventual top 10 and in the right order?
Strangely enough, while there’s plenty of work on voting blocs and bilateral biases at Eurovision, most of it asks who votes for whom; I wanted to ask who votes accurately. I couldn’t find anyone asking the question that way, so I decided to do some data analysis myself.
The metric# To begin to answer this question, I first needed to formalize what “best” even means. That is, some mathematical notion of “good” and “bad”.</description><content:encoded>&lt;p&gt;Eurovision was on yesterday. I&amp;rsquo;ve never been interested much in the musical side
but the weird political dynamics of Eurovision voting have always fascinated me;
I tune in each year just for them and somewhat snarky commentary of Graham
Norton, the UK commentator.&lt;/p&gt;
&lt;p&gt;As I was watching the jury votes come in, a question popped into my head: Which
country has &lt;em&gt;voted&lt;/em&gt; the best in Eurovision? That is, which country was best at
picking the eventual top 10 and in the right order?&lt;/p&gt;
&lt;p&gt;Strangely enough, while there&amp;rsquo;s
&lt;a href="https://en.wikipedia.org/wiki/Voting_at_the_Eurovision_Song_Contest#Regional_bloc_voting"&gt;plenty&lt;/a&gt;
&lt;a href="https://arxiv.org/abs/physics/0505071"&gt;of&lt;/a&gt;
&lt;a href="https://www.jasss.org/9/2/1.html"&gt;work&lt;/a&gt; on voting blocs and bilateral biases at
Eurovision, most of it asks &lt;em&gt;who votes for whom&lt;/em&gt;; I wanted to ask &lt;em&gt;who votes
accurately&lt;/em&gt;. I couldn&amp;rsquo;t find anyone asking the question that way, so I decided
to do some data analysis myself.&lt;/p&gt;
&lt;h2 id="the-metric"&gt;The metric&lt;a class="heading-anchor" href="#the-metric" aria-label="Permalink to The metric"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;To begin to answer this question, I first needed to formalize what &amp;ldquo;best&amp;rdquo; even
means. That is, some mathematical notion of &amp;ldquo;good&amp;rdquo; and &amp;ldquo;bad&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;The simplest measure I could come up with is &amp;ldquo;of the 10 countries you gave
points to, how many were in the actual top 10?&amp;rdquo;. The problem is that it can&amp;rsquo;t
tell apart a voter who gave the eventual winner 12 from one who gave them 1.
That feels wrong: an allocation is a &lt;em&gt;ranking&lt;/em&gt;, not just a set, so position
ought to matter.&lt;/p&gt;
&lt;p&gt;To weight position, I needed some scheme for how much position 1 matters
compared to position 10. Turns out Eurovision itself has already answered this
question: the 12, 10, 8, 7, 6, 5, 4, 3, 2, 1 it hands out is exactly such a
scheme. So I just reused it.&lt;/p&gt;
&lt;p&gt;So I tried the next simplest thing: for each country, I have two numbers: what
the voter awarded it, and how many points it actually received at the end.
Multiply them together, sum across all countries, and divide by the maximum
value that sum could possibly take if the voter had ranked everything perfectly
(awarded 12 to the actual winner, 10 to second place, and so on). The result is
between 0 and 1, where 1 is a perfect vote.&lt;/p&gt;
&lt;p&gt;A worked example. The actual jury top 5 in 2023, by points received, was Sweden
(340), Israel (177), Italy (176), Finland (150), Estonia (146). Imagine a
voter&amp;rsquo;s jury panel awarded (12 → Italy, 10 → Sweden, 8 → Estonia, 7 → Israel, 6
→ Finland).&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s the voter&amp;rsquo;s score:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Voter awarded&lt;/th&gt;
&lt;th&gt;Country&lt;/th&gt;
&lt;th&gt;× Actual points&lt;/th&gt;
&lt;th&gt;=&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;Italy&lt;/td&gt;
&lt;td&gt;× 176&lt;/td&gt;
&lt;td&gt;2,112&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;Sweden&lt;/td&gt;
&lt;td&gt;× 340&lt;/td&gt;
&lt;td&gt;3,400&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Estonia&lt;/td&gt;
&lt;td&gt;× 146&lt;/td&gt;
&lt;td&gt;1,168&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;Israel&lt;/td&gt;
&lt;td&gt;× 177&lt;/td&gt;
&lt;td&gt;1,239&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Finland&lt;/td&gt;
&lt;td&gt;× 150&lt;/td&gt;
&lt;td&gt;900&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Sum&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;8,819&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;And here&amp;rsquo;s the perfect score for this voter, what they&amp;rsquo;d have got if they had
awarded the 12 to the actual top scorer, the 10 to second, and so on:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Voter awarded&lt;/th&gt;
&lt;th&gt;Country&lt;/th&gt;
&lt;th&gt;× Actual points&lt;/th&gt;
&lt;th&gt;=&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;Sweden&lt;/td&gt;
&lt;td&gt;× 340&lt;/td&gt;
&lt;td&gt;4,080&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;Israel&lt;/td&gt;
&lt;td&gt;× 177&lt;/td&gt;
&lt;td&gt;1,770&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Italy&lt;/td&gt;
&lt;td&gt;× 176&lt;/td&gt;
&lt;td&gt;1,408&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;Finland&lt;/td&gt;
&lt;td&gt;× 150&lt;/td&gt;
&lt;td&gt;1,050&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Estonia&lt;/td&gt;
&lt;td&gt;× 146&lt;/td&gt;
&lt;td&gt;876&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Sum&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;9,184&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;So this voter&amp;rsquo;s score is 8,819 / 9,184 = &lt;strong&gt;0.96&lt;/strong&gt;. Close to perfect: the same
five countries are there, just slightly out of order.&lt;/p&gt;
&lt;h2 id="is-it-the-right-metric"&gt;Is it the right metric?&lt;a class="heading-anchor" href="#is-it-the-right-metric" aria-label="Permalink to Is it the right metric?"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Obviously this is not the only metric I could have used and there are &lt;em&gt;many&lt;/em&gt;
other candidates out there: least-squares distance to the perfect vote, NDCG@10
(a standard ranking measure used in search), and Pearson correlation.&lt;/p&gt;
&lt;p&gt;I went with the one above because I wanted the simplest thing which still
worked. Least-squares is the only &amp;ldquo;simpler&amp;rdquo; alternative I can think of, but its
scores end up squashed into a narrow range. The best voter across nine contests
only reaches around 0.42 out of a theoretical max of 1.0, which is the highest
score in the data but doesn&amp;rsquo;t &lt;em&gt;read&lt;/em&gt; like a good number. The metric above sits
more naturally on a 0-to-1 scale: the best voters land in the 0.8s, the worst in
the 0.6s, and 1.0 still means a perfect vote.&lt;/p&gt;
&lt;p&gt;In any case, I did run &lt;em&gt;all&lt;/em&gt; the metrics listed above and they mostly agreed,
with the same countries clustered at the top and bottom regardless of which one
I used. But the headline #1 &lt;em&gt;did&lt;/em&gt; shift between the top three or four countries
depending on which metric I picked.&lt;/p&gt;
&lt;h2 id="the-answer"&gt;The answer&lt;a class="heading-anchor" href="#the-answer" aria-label="Permalink to The answer"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;I picked 2016 as the start because that&amp;rsquo;s when Eurovision split each country&amp;rsquo;s
contribution into separate jury and televote slates, each awarding their own 12,
10, 8, &amp;hellip; points. Older contests used a single combined vote, so the data
doesn&amp;rsquo;t decompose the same way.&lt;/p&gt;
&lt;p&gt;Across these nine contests, here&amp;rsquo;s the full table:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Rank&lt;/th&gt;
&lt;th&gt;Country&lt;/th&gt;
&lt;th&gt;Score&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Spain&lt;/td&gt;
&lt;td&gt;0.815&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Lithuania&lt;/td&gt;
&lt;td&gt;0.810&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Belgium&lt;/td&gt;
&lt;td&gt;0.804&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Germany&lt;/td&gt;
&lt;td&gt;0.798&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Netherlands&lt;/td&gt;
&lt;td&gt;0.797&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Malta&lt;/td&gt;
&lt;td&gt;0.792&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;Sweden&lt;/td&gt;
&lt;td&gt;0.790&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Austria&lt;/td&gt;
&lt;td&gt;0.789&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;Iceland&lt;/td&gt;
&lt;td&gt;0.788&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;Norway&lt;/td&gt;
&lt;td&gt;0.783&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;11&lt;/td&gt;
&lt;td&gt;Israel&lt;/td&gt;
&lt;td&gt;0.778&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12&lt;/td&gt;
&lt;td&gt;Latvia&lt;/td&gt;
&lt;td&gt;0.777&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;13&lt;/td&gt;
&lt;td&gt;Finland&lt;/td&gt;
&lt;td&gt;0.777&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;14&lt;/td&gt;
&lt;td&gt;Moldova&lt;/td&gt;
&lt;td&gt;0.774&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;15&lt;/td&gt;
&lt;td&gt;Poland&lt;/td&gt;
&lt;td&gt;0.773&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;16&lt;/td&gt;
&lt;td&gt;Romania&lt;/td&gt;
&lt;td&gt;0.771&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;17&lt;/td&gt;
&lt;td&gt;Estonia&lt;/td&gt;
&lt;td&gt;0.770&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;18&lt;/td&gt;
&lt;td&gt;San Marino&lt;/td&gt;
&lt;td&gt;0.770&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;19&lt;/td&gt;
&lt;td&gt;Ireland&lt;/td&gt;
&lt;td&gt;0.762&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;20&lt;/td&gt;
&lt;td&gt;Armenia&lt;/td&gt;
&lt;td&gt;0.762&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;21&lt;/td&gt;
&lt;td&gt;Cyprus&lt;/td&gt;
&lt;td&gt;0.761&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;22&lt;/td&gt;
&lt;td&gt;Denmark&lt;/td&gt;
&lt;td&gt;0.757&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;23&lt;/td&gt;
&lt;td&gt;Albania&lt;/td&gt;
&lt;td&gt;0.754&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;24&lt;/td&gt;
&lt;td&gt;Slovenia&lt;/td&gt;
&lt;td&gt;0.751&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;25&lt;/td&gt;
&lt;td&gt;Australia&lt;/td&gt;
&lt;td&gt;0.749&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;26&lt;/td&gt;
&lt;td&gt;Azerbaijan&lt;/td&gt;
&lt;td&gt;0.746&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;27&lt;/td&gt;
&lt;td&gt;Serbia&lt;/td&gt;
&lt;td&gt;0.745&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;28&lt;/td&gt;
&lt;td&gt;Portugal&lt;/td&gt;
&lt;td&gt;0.743&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;29&lt;/td&gt;
&lt;td&gt;Switzerland&lt;/td&gt;
&lt;td&gt;0.739&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;30&lt;/td&gt;
&lt;td&gt;Czechia&lt;/td&gt;
&lt;td&gt;0.735&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;31&lt;/td&gt;
&lt;td&gt;Croatia&lt;/td&gt;
&lt;td&gt;0.733&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;td&gt;United Kingdom&lt;/td&gt;
&lt;td&gt;0.723&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;33&lt;/td&gt;
&lt;td&gt;France&lt;/td&gt;
&lt;td&gt;0.712&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;34&lt;/td&gt;
&lt;td&gt;Georgia&lt;/td&gt;
&lt;td&gt;0.707&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;35&lt;/td&gt;
&lt;td&gt;North Macedonia&lt;/td&gt;
&lt;td&gt;0.706&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;36&lt;/td&gt;
&lt;td&gt;Greece&lt;/td&gt;
&lt;td&gt;0.691&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;37&lt;/td&gt;
&lt;td&gt;Bulgaria&lt;/td&gt;
&lt;td&gt;0.688&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;38&lt;/td&gt;
&lt;td&gt;Ukraine&lt;/td&gt;
&lt;td&gt;0.675&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;39&lt;/td&gt;
&lt;td&gt;Italy&lt;/td&gt;
&lt;td&gt;0.666&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;40&lt;/td&gt;
&lt;td&gt;Montenegro&lt;/td&gt;
&lt;td&gt;0.625&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Spain edges it, but only barely. The top seven are within 0.025 of each other,
narrower than the year-to-year variation of any individual country, so calling
Spain &amp;ldquo;the&amp;rdquo; best voter is too strong a statement.&lt;/p&gt;
&lt;p&gt;A few countries often discussed in bloc-voting analyses do show up near the
bottom; parts of the Balkans (Croatia, North Macedonia, Bulgaria, Montenegro)
and Greece. But it&amp;rsquo;s only suggestive: others from the same blocs (Cyprus,
Albania, Serbia, Armenia) sit comfortably mid-table, so this metric isn&amp;rsquo;t really
measuring bloc voting; it&amp;rsquo;s measuring accuracy, which is a different thing.
Properly disentangling the two would need more analysis work I don&amp;rsquo;t really want
to do!&lt;/p&gt;
&lt;h2 id="a-note-on-data"&gt;A note on data&lt;a class="heading-anchor" href="#a-note-on-data" aria-label="Permalink to A note on data"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;All voting data is from
&lt;a href="https://github.com/EurovisionAPI/dataset"&gt;EurovisionAPI/dataset&lt;/a&gt;, a scraped
mirror of the EBU&amp;rsquo;s published results. As a sanity check on the two most recent
contests I parsed the Wikipedia voting tables for 2024 and 2025 and diffed every
cell against the dataset and got no differences.&lt;/p&gt;
&lt;p&gt;All my code is available on
&lt;a href="https://github.com/LalitMaganti/eurovision-correlation-analysis"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;</content:encoded></item></channel></rss>