Unit overview
Where the course becomes practical
Unit 3 is where the course stops being conceptual and starts being hands-on. Everything in Units 1 and 2 assumed you would eventually apply it to real data. This is where that happens. The tools you learn here — Jupyter, NumPy, Pandas, Matplotlib, and Scikit-Learn — are the same tools you will use for the rest of the course, and the same tools used daily by practitioners in industry.
Learning outcomes
By the end of this unit you will be able to
- Set up and use a Python environment for data science, including JupyterLab and the core libraries of the Python ML ecosystem.
- Load, inspect, and manipulate tabular data using Pandas DataFrames, including selecting, filtering, grouping, and aggregating.
- Perform the same operations on raw arrays using NumPy, and explain when vectorised computation is preferable to Python loops.
- Clean a real dataset: handle missing values, remove duplicates, correct data types, and address inconsistent formatting.
- Visualise data using Matplotlib, choosing appropriate plot types for different kinds of feature.
- Use the Scikit-Learn estimator API —
fit,predict,score— to train and evaluate a model in a few lines of code. - Perform a complete end-to-end machine learning workflow: load, explore, clean, split, train, evaluate, and interpret results on a real dataset.
- Explain how the operations you perform in code correspond to the conceptual stages of the lifecycle from T-08.
The shift from Units 1 and 2
Unit 1 was conceptual; Unit 2 was about the structure of data. Unit 3 is where you stop reading about machine learning and start doing it. Everything in the previous two units assumed you would eventually apply it. This is that moment. Expect to spend more time in front of a code editor than in front of a textbook.
Prerequisite reminder
This unit assumes you have completed Units 1 and 2, and that you are comfortable with basic Python programming — variables, functions, loops, and conditionals. If your Python is rusty, work through a refresher before starting T-01. The unit assumes you can read and write simple Python code, not that you are fluent in it.
Tutorials
Nine tutorials, worked through in order. The first seven introduce the tools one at a time, with plenty of small examples. T-08 brings everything together in a single complete workflow. T-09 reviews the unit and prepares you for Module 2.
The Python Data Science Stack
An orientation to the tools you will use for the rest of the course, and how they fit together.
T-02Jupyter Notebooks
The interactive environment for writing, running, and documenting data science code.
T-03NumPy: Arrays and Vectorised Computation
The numerical foundation underneath every other library, and why avoiding loops matters.
T-04Pandas: Series and DataFrames
Working with tabular data: loading, selecting, filtering, grouping, and aggregating.
T-05Data Cleaning with Pandas
Applying the concepts from Unit 2 to real, messy data using code.
T-06Matplotlib: Visualising Data
Creating plots that reveal the patterns in your data, and choosing the right plot for the task.
T-07Scikit-Learn and the Estimator API
The unified interface for every algorithm in the course: fit, predict, score.
T-08A First End-to-End Workflow
Bringing everything together: a complete machine learning project on a single dataset.
T-09Unit Review and Self-Assessment
A structured review of the unit and a short quiz to check your understanding.
What you will be working with
The Python ML ecosystem is deliberately modular. Each tool does one thing well, and they are designed to work together. By the end of this unit you will have used all of them.
How to work through this unit
This unit is the first one where you will spend most of your time typing code rather than reading prose. The habits that matter here are different from every earlier unit.
-
Type the code yourself
Do not copy and paste from the tutorials. Typing the code yourself, and making the small mistakes that come with it, is how the syntax and the patterns become familiar.
-
Run every cell
Every code example in this unit should be executed in your own environment. Reading code does not build the skill; running it does.
-
Experiment beyond the examples
When a tutorial shows you how to do something, try it on different columns, different rows, or a different dataset. The point is to build fluency, and fluency comes from variation.
-
Work through T-08 without help
The end-to-end workflow in T-08 is the direct precursor to Assignment 1. When you reach it, try to complete it without looking back at earlier tutorials. If you get stuck, look back — but attempt it first.
Assessment in this unit
Unit 3 contributes one unit quiz to your final grade, and prepares you directly for Assignment 1, which is the first substantial piece of work in the course.
- Quiz 3 Python ML Ecosystem — 15 questions, counts toward your quiz grade Go to T-09
- Assignment 1 Data Exploration and Preparation — released in Module 2, due week 4 Preview
Assignment 1 opens immediately after this unit
Assignment 1: Data Exploration and Preparation is released at the start of Module 2 and is due in week 4. It asks you to load, explore, clean, and prepare a real dataset — the same operations you will practise throughout this unit. If you work through T-08 carefully, the assignment will feel like a natural extension of it.
Setting up your environment
Before starting T-01, install Python, JupyterLab, NumPy, Pandas, Matplotlib, and Scikit-Learn on your machine. If installation causes problems, the Anaconda distribution packages all of them together and is the simplest starting point for most students. T-01 includes a brief installation guide, but if you have any difficulty, resolve it before continuing — the rest of the unit depends on a working environment.
Looking ahead to Module 2
Module 2 begins building models in earnest. Everything in this unit — loading data with Pandas, splitting it into training and test sets, fitting a model with Scikit-Learn — becomes a routine part of every tutorial. The tools are not the point; they are the medium through which the rest of the course is delivered. Learn them well here, and the later modules will feel much easier.