Progetto di clustering K-Means
Impari ad applicarlo a un dataset reale.
Progetto di clustering K-Means è una lezione Learn AI with Python gratuita su CoddyKit. Questa è la lezione 3 di 5. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Learn AI with Python, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Learn AI with Python include 5 lezioni in totale.
Progetto di clustering K-Means
In questo progetto applicheremo il clustering K-Means a un dataset reale: la segmentazione dei clienti. L'obiettivo è raggruppare i clienti in base ai loro modelli di spesa.

Panoramica del dataset
Il dataset contiene le seguenti colonne:
- ID cliente: identificatore univoco per ogni cliente.
- Età: età del cliente.
- Reddito annuo: reddito annuo espresso in migliaia di dollari.
- Punteggio di spesa: punteggio assegnato in base al comportamento del cliente e alle sue abitudini di spesa (1–100).
Passaggio 1: importazione del dataset e delle librerie
Inizieremo importando le librerie necessarie e caricando il dataset:
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
# Load dataset
data = pd.read_csv('Mall_Customers.csv')
print(data.head())Passaggio 2: pre-elaborazione dei dati
Selezioneremo le caratteristiche rilevanti per il clustering e, se necessario, normalizzeremo i dati. Per questo progetto useremo Reddito annuo e Punteggio di spesa:
# Select relevant features
X = data[['Annual Income (k$)', 'Spending Score (1-100)']].values
print(X[:5])Passaggio 3: determinazione del numero ottimale di cluster
Utilizziamo il metodo del gomito per trovare il numero ottimale di cluster tracciando la somma dei quadrati intra-cluster (WCSS) per diversi valori di K:
wcss = []
for i in range(1, 11):
kmeans = KMeans(n_clusters=i, init='k-means++', random_state=42)
kmeans.fit(X)
wcss.append(kmeans.inertia_)
plt.plot(range(1, 11), wcss)
plt.title('Elbow Method')
plt.xlabel('Number of Clusters')
plt.ylabel('WCSS')
plt.show()Passaggio 4: applicazione del clustering K-Means
In base al metodo del gomito, scegliamo il numero ottimale di cluster (ad es., K=5) e addestriamo il modello K-Means:
kmeans = KMeans(n_clusters=5, init='k-means++', random_state=42)
kmeans.fit(X)
# Add cluster labels to the dataset
data['Cluster'] = kmeans.labels_
print(data.head())Passaggio 5: visualizzazione dei cluster
È possibile tracciare i cluster in uno spazio 2D per osservarne la separazione:
plt.scatter(X[:, 0], X[:, 1], c=kmeans.labels_, cmap='viridis')
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=200, c='red', marker='X')
plt.title('Customer Segmentation')
plt.xlabel('Annual Income (k$)')
plt.ylabel('Spending Score (1-100)')
plt.show()Passaggio 6: interpretazione dei cluster
Ogni cluster rappresenta un gruppo di clienti con modelli di spesa simili. Ad esempio:
- Cluster 1: reddito alto, spesa elevata;
- Cluster 2: reddito basso, spesa ridotta;
- Cluster 3: reddito moderato, spesa elevata.
Difficoltà del clustering nel mondo reale
Sebbene il clustering sia potente, le applicazioni nel mondo reale devono affrontare difficoltà come:
- dataset ad alta dimensionalità;
- dati rumorosi o incompleti;
- interpretazione significativa dei risultati dei cluster.
Riepilogo e prossimi passi
In questo progetto:
- Abbiamo esplorato un dataset del mondo reale.
- Abbiamo applicato il clustering K-Means e visualizzato i risultati.
- Abbiamo interpretato i cluster per comprendere il comportamento dei clienti.
Successivamente, apprenderemo tecniche di riduzione della dimensionalità come PCA e t-SNE.

Impara Python con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 53
- Lezioni
- 225
Domande Frequenti
La lezione «Progetto di clustering K-Means» è gratuita?
Sì — il testo completo di «Progetto di clustering K-Means» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Learn AI with Python, passa a CoddyKit PRO. Il corso Learn AI with Python include 5 lezioni in totale.
Cosa imparerò in «Progetto di clustering K-Means»?
Impari ad applicarlo a un dataset reale. Eserciti Learn AI with Python con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Learn AI with Python?
Non è richiesta alcuna esperienza precedente. Learn AI with Python su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 5.
Quanto tempo richiede la lezione «Progetto di clustering K-Means»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Learn AI with Python?
Sì. Ogni lezione Learn AI with Python include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Introduzione agli algoritmi di clustering
- Clustering K-Means
- Progetto di clustering K-Means
- Fondamenti della riduzione della dimensionalità
- Applicazione della riduzione della dimensionalità