In 2014, I was first introduced to pandas and had no idea how to use it. By 2017, I had written the 500 page book Pandas Cookbook. This is roughly the path I took to mastering pandas for free:
- Read the official documentation
- Practice examples in the documentation
- Share a full data analysis with others
- Answer old Stack Overflow Questions
- Answer new Stack Overflow Questions
- Teach others in-person or online
- Write pandas blog posts
Read the official documentation
The official pandas documentation is often one of the best sources when learning any technical skill. The same is true for pandas. Start with user guide that takes you through all of the library.
Practice examples in the documentation
This should be done in tandem with reading. Use a new Jupyter Notebook for each section of the user guide. Make your own notes and write (not copy) the code. Experiment on your own with each example testing out the different parameter options.
Use a flashcard system such as Anki to help become more familiar with the available attributes and methods. While Stack Overflow is a great resource, you’ll show mastery once you can do an entire data analysis without leaving your notebook.
Share a full data analysis with others
After you’ve played with the toy examples in the docs, find a small real-world dataset. Ask interesting questions and then answer them. Share your work with others to get feedback. Kaggle datasets are great for this.
Answer old Stack Overflow Questions
Stack Overflow has nearly 250k questions tagged as pandas, most of them having solutions. Read the question and answer them on your own. Then compare yours to the other solutions. Answer several hundred. Do not post your solution yet.
Answer new Stack Overflow Questions
Very few people vote on old Stack Overflow questions. Post your solution to new Stack Overflow questions. They will get answered quickly by others, so you may not get upvotes at first. Be patient and keep posting and reviewing other people’s solutions.
Teach others in-person or online
Start mentoring other people who are beginning pandas users. It’s very helpful to see beginners make mistakes and then to correct them.
Write pandas blog posts
Blog posts can really help solidify your knowledge as a whole. Divide up your posts into two categories: Those that focus on a specific pandas topic and those that focus on real world data analysis with pandas.
By this point, you should have some pandas expertise, but as any skill in life, you’ll need continual practice to perfect your craft. Each one of these steps will need to be repeated in order to maintain and surpass your current level of expertise. For instance, I’ve lost track of all the times I’ve read through the official documentation. There is an enormous amount of features available to pandas users, and it’s difficult to retain all of it without repeated reference.
Master Data Analysis with Python — A Comprehensive Learning Path
For those that are looking for a more direct path, my book Master Data Analysis with Python is a comprehensive guide with hundreds of exercises, projects, solutions, and video lessons.