← Back to Python

All Topics

Advertisement

Learn/Python/Machine Learning

Clustering Algorithms

Topic: Unsupervised Learning

Advertisement

Introduction

Clustering groups similar data points without predefined labels.

K-Means

from sklearn.cluster import KMeans

kmeans = KMeans(n_clusters=3, random_state=42)
labels = kmeans.fit_predict(X)

# Elbow method
inertias = []
for k in range(1, 11):
    kmeans = KMeans(n_clusters=k)
    kmeans.fit(X)
    inertias.append(kmeans.inertia_)

Hierarchical Clustering

from sklearn.cluster import AgglomerativeClustering

agg = AgglomerativeClustering(n_clusters=3, linkage="ward")
labels = agg.fit_predict(X)

# Dendrogram
from scipy.cluster.hierarchy import dendrogram, linkage
Z = linkage(X, method="ward")
dendrogram(Z)

DBSCAN

from sklearn.cluster import DBSCAN

dbscan = DBSCAN(eps=0.5, min_samples=5)
labels = dbscan.fit_predict(X)

Practice Problems

  1. Find optimal k with elbow method
  2. Compare clustering algorithms
  3. Evaluate with silhouette score
  4. Visualize clusters
  5. Use hierarchical clustering

Advertisement

Advertisement

Need More Practice?

Get personalized Python help from ChatWhole's AI-powered platform.

Get Expert Help →