Tuesday Tip #36: Deciphering the pandas index 🕵️‍♂️


Hi Reader,

Do you have a topic you'd like me to cover in a future tip? Reply and let me know! 💌


🔗 Link of the week

Deep Learning Fundamentals (free course)

Are you interested in getting started with Deep Learning in Python? I haven't taken this course, but it looks promising!

I was thinking of starting a YouTube series in which I work through this course and share some of my learnings (and questions), and then you could follow along at home. Would that be of interest to you?


👉 Tip #36: Eight things you need to know about the pandas index

One aspect of Python's pandas library that can be confusing to newcomers is the concept of the "index". Every pandas DataFrame or Series has an index, and it's used for identification, selection, and alignment.

Here are some key facts about the index that will help you to work with pandas objects more effectively:

1️⃣ The index is on the left

The sequence of numbers on the left side is called the index, and they're used to identify the DataFrame rows. Sometimes they're called the "row labels".

2️⃣ By default, the index is a sequence of integers

Because I didn't define an index when creating the DataFrame, it assigned the numbers 0 through 192 as the index. They're stored in a special object called the "RangeIndex".

3️⃣ The column names are stored in an "Index" object

When people talk about "the index", they're talking about the row labels. But it turns out that the column names are stored in a special type of object called an "Index"!

That being said, you should never refer to the column names as "the index"... just call them "the columns" or "the column names".

4️⃣ The labels are not included in the shape

You should think of the index and columns as labels for the DataFrame. They're not part of the DataFrame "contents", and thus they're not included in its shape.

5️⃣ The index remains with each row

If you filter the DataFrame, the index remains with each row to identify it.

6️⃣ The index can be used for selection

You can use the loc accessor to select one or more rows or columns by label.

7️⃣ You can set a different column as the index

Notice that the default integer index no longer exists.

8️⃣ Setting a meaningful index allows for easier selection

Rather than referring to Brazil as "23" (its previous row label), you can refer to it as "Brazil".


Going further

If you want to learn more about the pandas index, check out these Data School videos:

🔗 What do I need to know about the pandas index? (Part 1)

🔗 What do I need to know about the pandas index? (Part 2)

Are you new to pandas? Stay tuned for my upcoming course, pandas in 30 days! Coming February 2024 🚀


🐊 See you later, alligator!

Did you like this week’s tip? Please forward it to a friend, or share this link in your favorite Slack group. It really helps me out! 🙌

See you next Tuesday!

- Kevin

P.S. AI murder mystery

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...