ModernCS
Jupyter

Intelligence · Taught with Jupyter

Data Science

Cleaning, exploring and reasoning about data. You work in pandas and SQL, test claims by simulation instead of formulas, and present a result someone can act on.

Download the course plan
  • Foundational
  • 4 phases
  • 22 sessions
  • First session free

Syllabus

4 phases · 22 sessions · each phase ends in something you have built

1

The Notebook and the Table

Get Python running on your own machine and read a real data file without help.

$72

this phase

  1. 1.1

    Setting Up Without Losing a Week

    Free preview

    uv, a virtual environment, JupyterLab running locally, and reading the error when it breaks.

    Open
  2. 1.2

    Python You Actually Need

    Variables, lists, functions, and loops, taken only as far as data work requires.

  3. 1.3

    Cells, Kernels, and Hidden State

    Why out-of-order execution quietly ruins results, and restart-and-run-all as a reflex.

  4. 1.4

    Tables as a Data Type

    Rows, columns, dtypes, and loading a CSV that fights back on encoding and headers.

  5. 1.5

    Your First Real Questions

    Filtering, sorting, and summarizing until you can describe a dataset in five sentences.

  6. 1.6

    Code You Did Not Write

    Using an AI assistant for pandas, and the three checks that catch a column it invented.

By the end of this phase:A notebook that runs clean from a fresh kernel and answers three questions about a dataset you chose.
2

Getting Data into Shape

Turn a messy export into a dataset you would defend line by line.

$72

this phase

  1. 2.1

    Cleaning Reality

    Missing values, duplicates, wrong types, and other people's spreadsheets.

  2. 2.2

    Assignment That Behaves

    Selecting with .loc, copy-on-write in pandas 3.0, and why chained assignment no longer works.

  3. 2.3

    Group, Pivot, Reshape

    groupby, aggregation, long against wide, and split-apply-combine as a single idea.

  4. 2.4

    Joins and the Rows You Silently Gained

    Merge keys, join types, and checking row counts before you believe the output.

  5. 2.5

    SQL Against Files with DuckDB

    Querying CSV and Parquet in place, and when SQL or Polars beats a chain of pandas calls.

  6. 2.6

    Charts That Argue

    Encodings, honest axes, and one figure that makes its point before the caption does.

By the end of this phase:A reproducible EDA notebook on a public dataset with every cleaning decision written down.
3

Saying Something Is True

Make a claim about a population from a sample and defend it under questioning.

$72

this phase

  1. 3.1

    Chance and Sampling

    Random samples, sampling variability, and simulating ten thousand coin flips to see it.

  2. 3.2

    A Null You Can Simulate

    Stating a hypothesis as a process you can run, then choosing a test statistic for it.

  3. 3.3

    Permutation and A/B Tests

    Shuffling group labels to compare two groups without a formula or a lookup table.

  4. 3.4

    The Bootstrap

    Resampling one sample to get an interval, and what 95% emphatically does not mean.

  5. 3.5

    Where the Normal Curve Comes From

    The central limit theorem as something you observe in simulation, not a theorem you memorize.

  6. 3.6

    Correlation, Confounders, Causation

    Randomized against observational data, and the traps that end analyst careers.

By the end of this phase:A designed and analyzed A/B test with a written recommendation you would sign.
4

From Analysis to Decision

Turn an analysis into a decision somebody actually makes.

$72

this phase

  1. 4.1

    Regression as Description

    Fitting a line, reading residuals, and refusing to call the result a prediction.

  2. 4.2

    Metrics That Survive Incentives

    Defining a metric people cannot quietly game, and naming the ones already gamed.

  3. 4.3

    The Analysis Report

    Turning a notebook into a document with Quarto so a stranger can rerun it next year.

  4. 4.4

    The Stakeholder Readout

    Structuring the argument, presenting it in ten minutes, and surviving the questions.

By the end of this phase:A stakeholder memo and a live readout that drives one concrete decision.

Tools you will use

  • Python
  • JupyterLab
  • uv
  • pandas
  • NumPy
  • DuckDB
  • Polars
  • seaborn

What you will build

  • Messy Data Rescue

    A public dataset cleaned into a defensible EDA notebook

  • The A/B Test Call

    Permutation test, bootstrap interval, one recommendation

  • The Decision Memo

    Question to query to chart to a call you defend live