Build a Data Analysis Library from Scratch in Python
What you will learn
How to build a Python library similar pandas
How to complete a large, comprehensive project
Test-driven development with pytest
Advanced Python topics such as special methods and property decorators
A fully-functioning library that you can use to data analysis
Section 1: Project Genesis
Section 2: Environment Setup
Section 3: Getting Ready to Code
Section 4: DataFrame Construction
Section 5: Basic Properties and Visual Representation
Section 6: Subset Selection
Section 7: Basic Methods
Section 8: Value Counts
Section 9: Other Methods and Operators
Section 10: Pivot Tables
Section 11: Documentation, Strings, and Reading CSVs
Immerse yourself in a long, comprehensive project that teaches advanced Python concepts to build an entire library
- Students must know the fundamentals of Python. This is an intermediate/advanced course.
- Must feel comfortable using and iterating through lists, tuples, sets, and dictionaries
- Exposure to numpy and pandas is helpful
Build a Data a Data Analysis Library from Scratch in Python is targeted to those that have a desire to immersive themselves into a single, long, and comprehensive project that covers several advanced Python concepts. By the end of the project you will have built a fully-functioning Python library that is able to complete most of the common data analysis tasks. The library will be titled Pandas Cub and have similar functionality to the popular pandas library.
This course focuses on developing software within the massive ecosystem of tools available in Python. There are 40 detailed steps that you must complete in order to finish the project. During each step, you will be tasked with writing some code that adds functionality to the library. In order to complete each step, you must pass the unit-tests that have already been written. Once you pass all the unit tests, the project is complete. The nearly 100 unit tests give you immediate feedback on whether or not your code completes the steps correctly.
There are many important concepts that you will learn while building Pandas Cub.
Creating a development environment with conda
Using test-driven development to ensure code quality
Using the Python data model to allow your objects to work seamlessly with builtin Python functions and operators
Build a DataFrame class with the following functionality:
Select subsets of data with the brackets operator
Aggregation methods - sum, min, max, mean, median, etc...
Non-aggregation methods such as isna, unique, rename, drop
Group by one or two columns to create pivot tables
Specific methods for handling string columns
Read in data from a comma-separated value file
A nicely formatted display of the DataFrame in the notebook
It is my experience, many people will learn just enough of a programming language like Python to complete basic tasks, but will not possess the skills to complete larger projects or build entire libraries are built. This course intends to provide a means for students looking for a challenging and exciting project that will take serious effort and a long time to complete.
This course is taught by expert instructor Ted Petrou, author of Pandas Cookbook, Master Data Analysis with Python, and Exercise Python.
Who this course is for:
- Students who understand the fundamentals of Python and are looking for a longer more comprehensive project covering advanced topics that they can immerse themselves in.