Cluster Songs by Audio Profile
Use K-Means clustering and PCA to discover natural groupings in songs based on their audio features.
3
Cluster Songs by Audio Profile
python • Step 3
Use K-Means clustering and PCA to discover natural groupings in songs based on their audio features.
clusteringkmeanspcaunsupervised_learning
Learning Objectives
- →Apply K-Means clustering to audio features
- →Use the elbow method to choose optimal K
- →Visualize clusters with PCA dimensionality reduction
Dataset
View on Kaggle Matches Kaggle
~114k Spotify tracks with audio features + genre labels.
*bleep* Load the dataset in the browser terminal:
from pyodide.http import open_url
import pandas as pd
df = pd.read_csv(open_url("/datasets/dataset.csv"))
print(df.shape)
print(df.columns.tolist()) Running locally? The file inside the Kaggle download is already named dataset.csv — drop it into the notebook's working directory and the code above runs unchanged (swap open_url(...) for "dataset.csv").
Dataset Columns
danceabilityenergyacousticnessvalenceinstrumentalnessspeechinesstempoloudnesscluster- Write your solution in the Try It Yourself editor below — matplotlib/seaborn figures and pandas tables render inline.
- Stuck? Expand a section and click ↑ Send to editor to stack its snippet into the editor, notebook-style.
- Hit ▶ Run (or ⌘↵) — once your output matches the expected result, the step is marked solved.
- Use ↺ Reset to restore the starter code at any time.
Try It Yourself
Python
Loading editor...
*bleep* Output will appear here after running your code. Figures from matplotlib/seaborn render inline.
Expected output:
K=5 silhouette score: Cluster sizes:
0/2
Export to GitHub
Cross-verse learning
Bleepx skills build on each other. Continue your learning path across Query, Lab, and Cloud.