Tuesday Tip #13: Use pandas resample() with time series data 📈


Hi Reader,

Last week, I released a 3-hour video, My top 50 scikit-learn tips.

I also finished Chapter 10 of my next ML course, which I'll tell you about once all 20 chapters are done 😅

Anyway, let’s get to today’s tip!


👉 Tip #13: Use resample() with time series data

For fun, I’ve been building an interactive dashboard using pandas, Plotly Express, and Shiny for Python. (Check out a screenshot here.)

The goal is to help me analyze sales of my online courses. And since I’m working with sales data, I’m reminded of how much I love the pandas resample function!

Let’s see an example of how to resample 😉

Pretend you have a DataFrame of sales data that looks like this:

You might ask: What are my total sales for each product?

In that case, you would use groupby:

You can read that code as: For each Product, this is the sum of the Sale column.

Another similar question you might ask is: What are my total sales for each day?

Instead of groupby, you would use resample, which I think of as “groupby for time series data”:

You can read that code as: For each day, this is the sum of the Sale column.

(Notice that it inserted 2023-03-31 with a value of 0, since there were no sales on that day.)

By changing the 'D' to an 'M', you can resample by month instead:

'D' and 'M' are known as the “offset alias”, and there are many other offset aliases you can use.

Finally, let’s say that the index is not a datetime column:

In that case, you need to use the 'on' parameter to specify the datetime column:

If you work with time series data, I bet you’ll find a use for resample!


If you enjoyed this week’s tip, please forward it to a friend! Takes only a few seconds, and it really helps me out! 🙌

See you next Tuesday!

- Kevin

P.S. What’s the worst volume control interface? (my favorite is #12)

Did someone awesome forward you this email? Sign up here to receive data science tips every week!

Learn Artificial Intelligence from Data School 🤖

Join 25,000+ intelligent readers and receive AI tips every Tuesday!

Read more from Learn Artificial Intelligence from Data School 🤖

Hi Reader, Most of us access Large Language Models (LLMs) through a web interface, like ChatGPT or Claude. It’s highly convenient, though there are two potential drawbacks: Cost: Some amount of usage is free, but heavy usage (or access to premium models) costs money. Privacy: Depending on the service, your chats may be used to train future models. (Or at the very least, your chats may be accessed if ordered by a court.) One solution is to run an LLM locally, which has gotten much easier with...

Hi Reader, Here are your top AI stories for the week: AI-driven education in 2 hours per day Add yourself to an AI-generated TV show AI models send "subliminal messages" to one another Read more below! 👇 Sponsored by: Superhuman AI Find out why 1M+ professionals read Superhuman AI daily. AI won't take over the world. People who know how to use AI will. Here's how to stay ahead with AI: Sign up for Superhuman AI. The AI newsletter read by 1M+ pros. Master AI tools, tutorials, and news in just...

Hi Reader, In this week’s tip, I’ll be breaking down some highly practical advice for taking full advantage of the capabilities of today’s AI models. Check it out below! 👇 Today’s tip is based on Ethan Mollick’s excellent article, Using AI Right Now: A Quick Guide. I recommend reading the whole thing if you have time, but if not, I’ve pulled out some important quotes from the article and added my own commentary: For most people who want to use AI seriously, you should pick one of three...