Learn the data toolkit every ML engineer uses daily — NumPy arrays and vectorized math, the pandas DataFrame, loading every common format, selecting and reshaping, group-by aggregation, and plotting with Matplotlib and Seaborn. Every lesson is runnable Python.
Before you start
You will run real Python. You need Python 3.10+ and a few libraries the lessons install as they go — numpy pandas matplotlib seaborn. No GPU or API keys required. A Jupyter notebook or any Python REPL is the easiest way to follow along.
NumPy Arrays
NumPy is the numerical foundation every ML library is built on. Create arrays, run vectorized math without loops, and use broadcasting to combine different shapes.
Indexing, Axes & Aggregation
Slice arrays, reduce along an axis, and reshape without copying. The axis argument is the concept that trips everyone up — get it right and NumPy clicks.
The Pandas DataFrame
The DataFrame is the spreadsheet of Python — labeled rows and columns you can slice, filter, and transform. Meet the Series, the DataFrame, and the index.
Loading Data: CSV, JSON, Parquet & More
Real data lives in files, databases, and APIs. Read CSV, JSON, Parquet, and Excel into a DataFrame, pull from SQL, and know which format to reach for.
Selecting & Filtering
Get exactly the rows and columns you want. Master .loc and .iloc, boolean filtering, and the difference between label-based and position-based access.
GroupBy & Aggregation
Split-apply-combine is the heart of data analysis: group rows by a key, compute a statistic per group, and combine the results. Then join and reshape tables.
Cleaning the Rough Edges
Before analysis, data needs tidying: missing values, wrong types, and text that needs normalizing. Handle the everyday messes so your numbers are trustworthy.
Visualization with Matplotlib & Seaborn
A chart reveals what a table hides. Plot distributions, relationships, and correlations with Matplotlib and Seaborn to understand data before you model it.