Die Getreideklumpen bewerten
In der letzten Übung hast du anhand des Trägheitsdiagramms gesehen, dass 3 eine gute Anzahl von Clustern für die Getreidedaten ist. Tatsächlich sind die Getreideproben aus drei verschiedenen Getreidesorten gemischt: „Kama“, „Rosa“ und „Canadian“. In dieser Übung gruppierst du die Getreideproben in drei Gruppen und vergleichst die Gruppen mithilfe einer Kreuztabelle mit den Getreidesorten.
Du hast das Array „ samples
“ mit Getreideproben und eine Liste „ varieties
“, die die Getreidesorte für jede Probe angibt. Pandas (pd
) und KMeans
wurden schon für dich importiert.
Diese Übung ist Teil des Kurses
Unüberwachtes Lernen in Python
Anleitung zur Übung
- Erstell ein „
KMeans
”-Modell namens „model
” mit „3
”-Clustern. - Verwende die Methode „
.fit_predict()
“ von „model
“, um sie an „samples
“ anzupassen und die Cluster-Labels abzuleiten. Die Verwendung von.fit_predict()
ist dasselbe wie die Verwendung von.fit()
gefolgt von.predict()
. - Erstell einen DataFrame „
df
” mit zwei Spalten namens „'labels'
” und „'varieties'
”, wobei du für die Spaltenwerte „labels
” und „varieties
” verwendest. Das haben wir für dich getan. - Benutz die Funktion „
pd.crosstab()
” aufdf['labels']
unddf['varieties']
, um zu zählen, wie oft jede Getreidesorte mit jedem Cluster-Label übereinstimmt. Weise das Ergebnisct
zu. - Klick auf „Senden“, um die Kreuztabelle zu sehen!
Interaktive Ü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)