CommencerCommencer gratuitement

Évaluer le clustering des grains

Dans l'exercice précédent, vous avez observé à partir du graphique d'inertie que 3 est un nombre approprié de clusters pour les données sur les céréales. En effet, les échantillons de céréales proviennent d'un mélange de 3 variétés différentes : « Kama », « Rosa » et « Canadian ». Dans cet exercice, regroupez les échantillons de céréales en trois clusters et comparez les clusters aux variétés de céréales à l'aide d'un tableau croisé.

Vous disposez du tableau samples contenant les échantillons de céréales et d'une liste varieties indiquant la variété de céréales pour chaque échantillon. Pandas (pd) et KMeans ont déjà été importés pour vous.

Cet exercice fait partie du cours

Apprentissage non supervisé en Python

Afficher le cours

Instructions

  • Créez un modèle KMeans appelé model avec 3 clusters.
  • Utilisez la méthode .fit_predict() de model pour l'ajuster à samples et dériver les étiquettes des clusters. L'utilisation de .fit_predict() équivaut à utiliser .fit() suivi de .predict().
  • Créez un DataFrame « df » avec deux colonnes nommées « labels » et « varieties », en utilisant respectivement « labels » et « varieties » pour les valeurs des colonnes. Cela a été effectué pour vous.
  • Utilisez la fonction pd.crosstab() sur df['labels'] et df['varieties'] pour compter le nombre de fois où chaque variété de céréales coïncide avec chaque étiquette de cluster. Attribuez le résultat à ct.
  • Cliquez sur « Soumettre » pour voir le tableau croisé !

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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)
Modifier et exécuter le code