Skip to content
4 min read plotly plotting pivot-table datetime grouping

Bamboo Weekly #173: IPOs

Get better at: multiple files, pivot tables, plotting, filtering, and working with dates and times.

Bamboo Weekly #173: IPOs

Administrative note: I've added two new pages to Bamboo Weekly:

I'm always open to ideas for how BW can be a better resource. Please keep the ideas coming!

The big business news is that Elon Musk's SpaceX has filed to go public (https://www.nytimes.com/2026/06/02/podcasts/the-daily/elon-musk-spacex-ipo.html?unlocked_article_code=1.nVA.qzIS.Mk8l9cGQbRQ-&smid=url-share).

In related business news, Anthropic, makers of Claude, have started to share the documents needed for them to go public, too (https://www.nytimes.com/2026/06/01/technology/anthropic-ipo.html?unlocked_article_code=1.nVA.WSFn.kGiNEelq45nz&smid=url-share). There are also consistent rumors that OpenAI will go public in the coming months, also at a very high valuation.

This means that these three companies, all currently private, will sell some of their shares to the general public on the stock market.

All three of these companies have issued shares, where each share is worth one piece of ownership. So if a company issues 100 shares, and you own 1 share, then you own 1 percent of the company.

But these companies are private, which means that you cannot sell your share to someone else without the company's explicit permission. So even if everyone agrees that SpaceX is a hot, profitable company, and is willing to pay a very high price for one share, the current shareholders are forbidden from selling the shares.

This all changes when the company goes public: Anyone can buy and sell shares on the stock market. Moreover, the price fluctuates according to supply and demand. So if lots of people want a share of SpaceX, the price will go up. And if fewer people want that share, then the price will go down.

The transition between a private company and a public one is typically an IPO, or "initial public offering." Some of the shares are made available to the public, and their prices can go up or down, depending on demand and popularity. If you own 1,000 shares, and the price goes up to $1,000/share, you are suddenly a millionaire, at least on paper. And if there are 1 million total shares, then $1,000 * 1 million = $1 billion in valuation.

And in the case of SpaceX? They're aiming for a valuation of $1.75 trillion.

A lot of people are excited about these companies going public, and are hoping to buy shares on the public markets as soon as they can. However, there's no guarantee that the prices will go up, either on the first day of trading or down the road. It depends on whether the companies can be profitable, or if they can convince shareholders that it'll eventually be profitable.

This week, we'll look at data from a number of recent IPOs. How many companies went public? How many have higher prices today than on their first day of public trading? How many have disappeared completely?

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 using APIs, cleaning data, joins, grouping, pivot tables, and working with dates and times.

Data and five questions

This week's data, comes in part from FinnHub.com, which has a list of IPOs available for download with a free API key. It's a bit tricky to get that data, but my new BFF Claude and I were able to get it. I've enclosed a program you can run to retrieve it into a data frame, although you will need to sign up and get a key from FinnHub.com. Some other data comes from Yahoo Finance, from which you can retrieve things using the yfinance package on PyPI.

Here's the download program (which works, but could probably use some sprucing up):

Here are my five tasks and problems. I'll be back tomorrow with my full solutions and explanations: