A weekly Python podcast hosted by Christopher Bailey with interviews, coding tips, and conversation with guests from the Python community. The show covers a wide range of topics including Python programming best practices, career tips, and related software development topics. Join us every Friday morning to hear what's new in the world of Python programming and become a more effective Pythonista.
Exploring K-means Clustering and Building a Gradebook With Pandas
Do you want to learn the how and when of implementing K-means clustering in Python? Would you like to practice your pandas skills with a real-world project? This week on the show, David Amos is back with another batch of PyCoder’s Weekly articles and projects.
David talks about a Real Python article about how to perform K-means clustering in Python. We also talk about a new project based article on the site about how to create a gradebook using pandas, practicing the skills of importing, merging, and calculating across groups of data. We cover several other articles and projects from the Python community including: JPEG image decoding, object-oriented development with interfaces and mixins, sparking joy with Python, five package picks from Real Python authors, and more.
Course Spotlight: Reading and Writing CSV Files
This course teaches how to read and write data to CSV files using Python’s built in csv
module and the pandas library. You’ll learn how to handle standard and non-standard data such as CSV files without headers, or files containing delimiters in the data.
Topics:
- 00:00:00 – Introduction
- 00:01:34 – Understanding and Decoding a JPEG Image Using Python
- 00:08:41 – K-Means Clustering in Python: A Practical Guide
- 00:12:49 – Pandas Project: Make a Gradebook With Pandas
- 00:17:54 – Video Course Spotlight
- 00:18:53 – Interfaces, Mixins and Building Powerful Custom Data Structures in Python
- 00:32:29 – Sparking Joy With Python
- 00:43:33 – Python Packages: Five Real Python Favorites
- 00:52:15 – zxcvbn-python: Dropbox’s Realistic Password Strength Estimator
- 00:55:43 – Manim: Animation Engine for Explanatory Math Videos
- 01:00:34 – Thanks and Goodbye
Show Links:
Understanding and Decoding a JPEG Image Using Python – Learn about the JPEG compression algorithm in this comprehensive guide to decoding JPEGs with Python.
K-Means Clustering in Python: A Practical Guide – Learn how to perform k-means clustering in Python. You’ll review evaluation metrics for choosing an appropriate number of clusters and build an end-to-end k-means clustering pipeline in scikit-learn
.
Pandas Project: Make a Gradebook With Pandas – With this follow-along Python project, you’ll build a script to calculate grades for a class using pandas. The script will quickly and accurately calculate grades from a variety of data sources. You’ll see examples of loading, merging, and saving data with pandas, as well as plotting some summary statistics.
Interfaces, Mixins and Building Powerful Custom Data Structures in Python – How to supercharge Python’s built-in data structures and build powerful custom data structures with mixin classes.
Sparking Joy With Python – After a fling with TypeScript, one Python programmer shares some thoughts on keeping the flame alive with Python.
Python Packages: Five Real Python Favorites – In this tutorial, several Real Python authors share Python packages we like to use as alternatives to modules in the standard library. You’ll get to know a number of useful packages, including pudb
, requests
, parse
, dateutil
, and typer
.
Projects:
- zxcvbn-python: Dropbox’s Realistic Password Strength Estimator
- Manim: Animation engine for explanatory math videos
Additional Links:
- JPEG - Wikipedia article
- YCbCr - Wikipedia article
- Python Type Checking (Guide) - Real Python article
- The Pandas DataFrame: Make Working With Data Delightful - Real Python article
- Implementing an Interface in Python - Real Python article
- TypeScript: Open-source language which builds on JavaScript
- 3Blue1Brown - YouTube channel
- Getting Started Animating with manim and Python 3.7