Skip to content

Pandas Fundamentals

Free

DataFrames and Series, selection and filtering, groupby aggregation, joins, reshaping, and time series — on a realistic SaaS dataset.

7 modules · Free with a (free) account.

View the full course

What this course covers

A module-by-module concept outline. Open the course to learn each topic with animated explanations, in-browser code, practice challenges, and a knowledge check.

Module 1. DataFrames & Series — The Building Blocks

Topics
Why Pandas for Data ScienceThe Acme SaaS Running DatasetDataFrame Anatomy — Rows, Columns, IndexSeries — The Underlying Building BlockInspecting Data — head, info, describe
Sections
  1. 1Why Pandas & The Acme SaaS Dataset
  2. 2DataFrame Anatomy — Rows, Columns, Index
  3. 3Series — The Underlying Building Block
  4. 4Inspecting Data — head, info, describe
  5. 5Mutability vs. Copies — Avoiding the Common Trap

Module 2. Selecting & Filtering — loc, iloc, query

Topics
Column selection — [], dot access, and the gotchasloc — Label-based accessiloc — Position-based accessBoolean masks — vectorized filteringquery() — readable, expressive filters
Sections
  1. 1Column Selection — The Three Ways
  2. 2loc — Label-Based Selection
  3. 3iloc — Position-Based Selection
  4. 4Boolean Masks — Filtering by Condition
  5. 5query() — Readable Filter Syntax

Module 3. Aggregation & GroupBy — Split-Apply-Combine

Topics
The split-apply-combine mental modelgroupby() with single and multiple keysagg() — multiple aggregations at oncetransform() vs aggregate() vs apply()Named aggregations — readable result columns
Sections
  1. 1The Split-Apply-Combine Mental Model
  2. 2groupby() — Single and Multi-Key Grouping
  3. 3agg() — Multiple Aggregations at Once
  4. 4transform vs aggregate vs apply
  5. 5Named Aggregations & Result Hygiene

Module 4. Joining DataFrames — merge with validate

Topics
merge() — inner, left, right, outeron, left_on, right_on — controlling the keysvalidate='one_to_many' — catching cardinality bugs earlyconcat() — stacking vs aligning framesjoin() — index-based merging
Sections
  1. 1merge() — The Four How Modes
  2. 2Controlling Keys — on, left_on, right_on
  3. 3Cardinality — validate Saves Lives
  4. 4concat() — Stacking and Aligning
  5. 5join() — Merging by Index

Module 5. Reshaping Data — Wide ⇄ Long

Topics
Wide format vs long format — same data, two shapesmelt() — flatten wide to longpivot() and pivot_table() — widen long to widestack() and unstack() — toggle layers of a MultiIndexWhen to use which — practical guidance
Sections
  1. 1Wide vs Long — Two Shapes, Same Data
  2. 2melt() — Flattening Wide to Long
  3. 3pivot() and pivot_table() — Widening to Wide
  4. 4stack() and unstack() — MultiIndex Toggles
  5. 5Choosing the Right Shape for the Job

Module 6. Time Series Essentials

Topics
Parsing dates — pd.to_datetime() and pitfallsDatetimeIndex — the unlock for resample and rollingresample() — period bucketizationrolling() — windows over timeTimezones — naive vs aware, the conversion pattern
Sections
  1. 1Parsing Dates — to_datetime() and Pitfalls
  2. 2DatetimeIndex — The Time-Aware Index
  3. 3resample() — Bucketizing by Period
  4. 4rolling() — Windows Over Time
  5. 5Timezones — Naive vs Aware

Module 7. Common Pitfalls & Performance

Topics
SettingWithCopyWarning — what it really meansVectorize, don't loop — the 100× speedupdtypes — when pandas guesses wrongMissing data — NaN, None, and the type promotion trapProfiling — finding the slow line
Sections
  1. 1SettingWithCopyWarning — Understanding & Fixing
  2. 2Vectorization — Why apply() Is Often Wrong
  3. 3dtypes — When Pandas Guesses Wrong
  4. 4Missing Data — NaN, None, and Promotions
  5. 5Profiling — Finding the Slow Line

Ready to start Pandas Fundamentals?

Free with a (free) account — sign in and start learning.

Go to the course