Skip to content
3 min read plotly plotting grouping cleaning json polars api

Bamboo Weekly #192: Nobel Prize winners

Get better at: Using Polars, working with APIs, handling JSON, cleaning, grouping, and plotting with Plotly.

Bamboo Weekly #192: Nobel Prize winners

The Nobel Prizes for 2026 were awarded earlier this month; you can read about the recipients at https://www.nytimes.com/article/nobel-prizes-2026.html?unlocked_article_code=1.IlE.fisy.lQXkws2dYxyt&smid=url-share.

These prizes have become, over more than a century, one of the best-known and highest honors in the world. (And yes, the economics prize isn't a "real" Nobel Prize, but let's be real; no one is going to say "no" if they are given the award.) This week, we'll examine Nobel Prize data, using the API provided by the official Nobel Prize site. We previously looked at Nobel Prizes three years ago, back in BW #36, if you want another challenge on similar data.

This week, instead of using Pandas, we'll use an alternative library, Polars (https://pola.rs/). Polars, as you might know, is written in Rust rather than a combination of C and Python, and provides an API for Python users. Because it is written in Rust, Polars runs faster -- often much faster -- than Pandas. The Polars core developers just released version 2.0 of the library, with many fixes, speedups, and improvements, and I decided to take it for a spin with this week's problems.

Data and five questions

This week's data comes from the API for the Nobel Prize, which is as official as things can get. We'll retrieve information in JSON format about the prize winners ("laureates") via the API provided at https://api.nobelprize.org, and documented at https://www.nobelprize.org/about/developer-zone-2/ . Once we have put the data into a Polars data frame, we'll then try to answer some questions.

Two notes about the API:

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: Polars, working with APIs, working with JSON, cleaning data, grouping, and plotting with Plotly.

Here are my five questions and tasks for this week. I'll be back tomorrow with my solutions and explanations.