This plan includes
- Limitedfree coursesaccess
- Play & PauseCourse Videos
- VideoRecorded Lectures
- Learn onMobile/PC/Tablet
- Quizzes andReal Projects
- Lifetime CourseCertificate
- Email & ChatSupport
What you'll learn?
- Build a fully-functioning Python library similar to pandas that you can use to do data analysis
- Complete a large, comprehensive project
- Test-driven development with pytest
- Environment creation with conda
- Advanced Python topics such as special methods and property decorators
Course Overview
Build a Data a Data Analysis Library from Scratch in Python targets those that have a desire to immerse themselves in 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 many 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 that 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. 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.
Pre-requisites
- 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
Target Audience
- 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.
Curriculum 57 Lectures 06:09:40
Section 1 : Project Generics
- Lecture 2 :
- Pandas Cub Examples
- Lecture 3 :
- Downloading the Material from GitHub
Section 2 : Environment Setup
- Lecture 1 :
- Opening the Project in VS Code
- Lecture 2 :
- Setting up the Development Environment
- Lecture 3 :
- Test-Driven Development
- Lecture 4 :
- Installing an IPython Kernel for Jupyter
Section 3 : Getting Ready to Code
- Lecture 1 :
- Inspecting the __init__.py File
- Lecture 2 :
- Importing Pandas Cub
- Lecture 3 :
- Manually Test in a Jupyter Notebook
- Lecture 4 :
- Getting Ready to Start
Section 4 : DataFrame Constructions
- Lecture 1 :
- Check DataFrame Constructors Input Types
- Lecture 2 :
- Check Array Lengths
- Lecture 3 :
- Convert Unicode Arrays to Object
Section 5 : Basic Properties and Visual Representation
- Lecture 1 :
- Implementing the __len__ Special Method
- Lecture 2 :
- Return Columns as a List
- Lecture 3 :
- Set New Column Names
- Lecture 4 :
- The shape Property
- Lecture 5 :
- Visual Notebook Representation
- Lecture 6 :
- The values Property
- Lecture 7 :
- The dtypes Property
Section 6 : Subset Selection
- Lecture 1 :
- Select a Single Column
- Lecture 2 :
- Select Multiple Columns
- Lecture 3 :
- Boolean Selection
- Lecture 4 :
- Check for Simultaneous Selection
- Lecture 5 :
- Select a Single Cell
- Lecture 6 :
- Select Rows as Booleans, Lists, or Slices
- Lecture 7 :
- Multiple Column Simultaneous Selection
- Lecture 8 :
- Column Slices
- Lecture 9 :
- Tab Completion for Columns
- Lecture 10 :
- Create a New Column
Section 7 : Basic Methods
- Lecture 1 :
- head and tail Methods
- Lecture 2 :
- Generic Aggregation Methods
- Lecture 3 :
- The isna Method
- Lecture 4 :
- The count Method
- Lecture 5 :
- The unique Method
- Lecture 6 :
- The nunique Method
Section 8 : Value Counts
- Lecture 1 :
- Normalize value_counts
- Lecture 2 :
- The value_counts Method
Section 9 : Others Method and Operations
- Lecture 1 :
- The rename Method
- Lecture 2 :
- The drop Method
- Lecture 3 :
- Non-Aggregation Methods
- Lecture 4 :
- The diff Method
- Lecture 5 :
- The pct_change Method
- Lecture 6 :
- Arithmetic and Comparison Operators
- Lecture 7 :
- The sort_values Method
- Lecture 8 :
- The sample Method
Section 10 : Pivot Tables
- Lecture 1 :
- Pivot Tables Part 1
- Lecture 2 :
- Pivot Tables Part 2
- Lecture 3 :
- Pivot Tables Part 3
- Lecture 4 :
- Pivot Tables Part 4
- Lecture 5 :
- Pivot Tables Part 5
Section 11 : Documentation, String and Reading CSVs
- Lecture 1 :
- Automatically Add Documentation
- Lecture 2 :
- String-only Methods
- Lecture 3 :
- The read_csv Function part 1
- Lecture 4 :
- The read_csv Function part 2
- Lecture 5 :
- Conclusion
Our learners work at
Frequently Asked Questions
How do i access the course after purchase?
It's simple. When you sign up, you'll immediately have unlimited viewing of thousands of expert courses, paths to guide your learning, tools to measure your skills and hands-on resources like exercise files. There’s no limit on what you can learn and you can cancel at any time.Are these video based online self-learning courses?
Yes. All of the courses comes with online video based lectures created by certified instructors. Instructors have crafted these courses with a blend of high quality interactive videos, lectures, quizzes & real world projects to give you an indepth knowledge about the topic.Can i play & pause the course as per my convenience?
Yes absolutely & thats one of the advantage of self-paced courses. You can anytime pause or resume the course & come back & forth from one lecture to another lecture, play the videos mulitple times & so on.How do i contact the instructor for any doubts or questions?
Most of these courses have general questions & answers already covered within the course lectures. However, if you need any further help from the instructor, you can use the inbuilt Chat with Instructor option to send a message to an instructor & they will reply you within 24 hours. You can ask as many questions as you want.Do i need a pc to access the course or can i do it on mobile & tablet as well?
Brilliant question? Isn't it? You can access the courses on any device like PC, Mobile, Tablet & even on a smart tv. For mobile & a tablet you can download the Learnfly android or an iOS app. If mobile app is not available in your country, you can access the course directly by visting our website, its fully mobile friendly.Do i get any certificate for the courses?
Yes. Once you complete any course on our platform along with provided assessments by the instructor, you will be eligble to get certificate of course completion.For how long can i access my course on the platform?
You require an active subscription to access courses on our platform. If your subscription is active, you can access any course on our platform with no restrictions.Is there any free trial?
Currently, we do not offer any free trial.Can i cancel anytime?
Yes, you can cancel your subscription at any time. Your subscription will auto-renew until you cancel, but why would you want to?
Instructor
2898 Course Views
4 Courses