Python

K-Means: Cluster From Scratch

Cluster raw points into natural groups by building k-means yourself with numpy: assign, recompute, repeat. The workhorse of unsupervised machine learning, in vectorized Python.

PythonIntermediatePortfolio piece

What you'll be able to build

Cluster raw points into natural groups by building k-means yourself with numpy: assign, recompute, repeat. The workhorse of unsupervised machine learning, in vectorized Python. Along the way you pick up real, transferable Python skills, not just this one project:

  • numpy arrays and vectorized distance math
  • assigning points to the nearest centroid
  • recomputing centroids as group means
  • looping until centroids stop moving
  • seeding for reproducible clusters
  • scoring how tight the clusters are

A course like this one

Yours is built from your own placement, so module count and depth will differ. This map shows what a intermediate-level Python learner building K-Means actually gets.

  1. Module 1: Values and output5 lessons

    Builds the script for your K-Means.

  2. Module 2: Collections and data5 lessons

    Builds the data flow workflow for your K-Means.

  3. Module 3: Branching and state5 lessons

    Builds the function that powers your K-Means.

  4. Module 4: Functions and tests5 lessons

    Builds the reusable module for your K-Means.

  5. Module 5: Files, APIs, and persistence5 lessons

    Builds the service boundary for your K-Means.

  6. Module 6: Packaging and review3 lessons

    Builds the release package for your K-Means.

How the lessons actually work

Leans on:numpy

Every lesson has you predict what a piece of Python code will output before you run it, then run it for real in your browser and fix what you got wrong. Each module ends in a challenge gate with hidden tests, so you can't advance until your code actually works. The course closes with a capstone that assembles everything into K-Means, and a runnable proof page tied to your own code.

Common questions

How long does the K-Means: Cluster From Scratch course take?

about 7 hours, across 6 modules and 28 lessons, at roughly 15 minutes per lesson. Your own course may run shorter or longer, since it's sized to your placement result, not a fixed template.

Do I need experience?

Some. This is an intermediate-tier Python project, so it assumes you're comfortable with Python basics and pushes past them.

How much does it cost?

$15 one-time, no subscription. The first module is free, so you can see exactly how the course teaches before you pay for the rest.

No subscription. Module one is free.

Build my K-Means