Summer has started in the northern hemisphere, and Europe has been suffering quite a bit! The news has been full of reports about how hot London, Paris, and even Budapest have been. I'm heading to Krakow, Poland, for EuroPython about 10 days, and I've been eyeing the temperatures there nervously.
I don't mind hot weather, but so many places in those countries lack air conditioning, and people have really been having a hard time staying cool – so much so that many people have died (https://www.usnews.com/news/world/articles/2026-06-28/france-records-around-1-000-additional-deaths-amid-extreme-heat-wave-leading-to-european-records).
This week, we'll look at just how hot it was in Europe over the last two months. Where was it hottest (and where was it not)? Along the way, we'll play with GeoPandas, APIs, and even a Marimo dashboard for some plotting.
Data and five questions
We'll use two types of data: First, an Excel file that I prepared with European country names, capital cities, and locations (i.e., latitude, longitude, and altitude). We'll then use https://open-meteo.com/, a free weather-reporting service with an API, to retrieve weather information about these cities.
I just realized that I forgot to include the Excel file of European capitals! My apologies to those of you looking for it in the e-mail edition.
Paid subscribers, both to Bamboo Weekly and to my LernerPython+data membership program (https://LernerPython.com) get all of the questions and answers, as well as downloadable data files, downloadable versions of my notebooks, one-click access to my notebooks, and invitations to monthly office hours.
Learning goals for this week include GeoPandas, multi-indexes, plotting, and using APIs.
Here are my five questions for this week. I'll be back tomorrow with my solutions and explanations:
- Read data from European capitals (the provided Excel document) into a Pandas data frame. Based on the data there, find the capital that is furthest in each direction (north, south, east, and west), as well as at the highest and lowest altitudes.
- Turn the data frame into a GeoPandas data frame. Which two capitals are closest to one another? Which are farthest apart? (This is more complex than you might think! Among other things, you'll need to change the projection to CRS 3035, to handle European distances sanely.)