Clustering: Agrupación con K-Means [Ejercicio]

¿Qué aplicamos aquí?

  • Clustering: Se utiliza para agrupar datos no etiquetados en 4 clusters.
  • K-Means: Encuentra los centros de los clusters y asigna cada punto a uno.
  • Visualización: Muestra los datos agrupados y los centroides.

Ver en Colab ➜

from sklearn.datasets import make_blobs
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt

# Generar datos sintéticos
X, y = make_blobs(n_samples=300, centers=4, cluster_std=1.0, random_state=42)

# Aplicar K-Means
kmeans = KMeans(n_clusters=4, random_state=42)
kmeans.fit(X)
y_kmeans = kmeans.predict(X)

# Visualizar los clusters
plt.scatter(X[:, 0], X[:, 1], c=y_kmeans, cmap='viridis', label="Puntos")
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=200, c='red', label='Centroides')
plt.title("Clustering con K-Means")
plt.xlabel("Característica 1")
plt.ylabel("Característica 2")
plt.legend()
plt.show()