Bewertung des Getreide-Clusterings
In der vorherigen Übung hast du im Trägheitsdiagramm gesehen, dass Drei eine gute Cluster-Anzahl für die Getreidedaten ist. Tatsächlich stammen die Getreideproben aus einer Mischung von drei verschiedenen Sorten: „Kama“, „Rosa“ und „Canadian“. In dieser Übung clusterst du die Getreideproben in drei Cluster und vergleichst die Cluster mithilfe einer Kreuztabelle mit den Sorten.
Du hast das Array samples mit Getreideproben sowie eine Liste varieties, die für jede Probe die Sorte angibt. Pandas (pd) und KMeans sind bereits importiert.
Diese Übung ist Teil des Kurses
<Kurs>Unsupervised Learning in Python</Kurs>Übungsanweisungen
- Erstelle ein
KMeans-Modell namensmodelmit3Clustern. - Verwende die Methode
.fit_predict()vonmodel, um es aufsampleszu fitten und die Cluster-Labels zu erhalten. Die Verwendung von.fit_predict()entspricht.fit()gefolgt von.predict(). - Erstelle einen DataFrame
dfmit zwei Spalten namens'labels'und'varieties'und verwende dafürlabelsbzw.varietiesals Spaltenwerte. Das wurde bereits für dich erledigt. - Verwende die Funktion
pd.crosstab()aufdf['labels']unddf['varieties'], um zu zählen, wie oft jede Sorte mit jedem Cluster-Label zusammenfällt. Weise den Ergebnis-DataFramectzu. - Klicke auf Antworten, um die Kreuztabelle zu sehen!
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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)