IniziaInizia gratis

Valutare il clustering dei cereali

Nell'esercizio precedente, dal grafico dell'inerzia hai visto che 3 è un buon numero di cluster per i dati sui cereali. In effetti, i campioni provengono da un mix di 3 varietà diverse: "Kama", "Rosa" e "Canadian". In questo esercizio, raggruppa i campioni in tre cluster e confronta i cluster con le varietà usando una tabella a doppia entrata.

Hai a disposizione l'array samples con i campioni e una lista varieties con la varietà corrispondente a ciascun campione. Pandas (pd) e KMeans sono già stati importati per te.

Questo esercizio fa parte del corso

Apprendimento non supervisionato in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Crea un modello KMeans chiamato model con 3 cluster.
  • Usa il metodo .fit_predict() di model per addestrarlo su samples e ricavare le etichette dei cluster. Usare .fit_predict() equivale a usare .fit() seguito da .predict().
  • Crea un DataFrame df con due colonne chiamate 'labels' e 'varieties', usando rispettivamente labels e varieties come valori. Questo è già stato fatto per te.
  • Usa la funzione pd.crosstab() su df['labels'] e df['varieties'] per contare quante volte ciascuna varietà coincide con ciascuna etichetta di cluster. Assegna il risultato a ct.
  • Premi Invia per vedere la tabella a doppia entrata!

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Create a KMeans model with 3 clusters: model
model = ____

# Use fit_predict to fit model and obtain cluster labels: labels
labels = ____

# Create a DataFrame with labels and varieties as columns: df
df = pd.DataFrame({'labels': labels, 'varieties': varieties})

# Create crosstab: ct
ct = ____

# Display ct
print(ct)
Modifica ed esegui il codice