Extrahieren der Cluster-Labels
In der vorherigen Übung hast du gesehen, dass die Zwischenclusterung der Getreideproben auf Höhe 6 3 Cluster hat. Benutze nun die Funktion fcluster()
, um die Cluster-Labels für dieses Zwischencluster zu extrahieren, und vergleiche die Labels mit den Getreidesorten, indem du eine Kreuztabelle erstellst.
Das hierarchische Clustering wurde bereits durchgeführt und mergings
ist das Ergebnis der Funktion linkage()
. Die Liste varieties
gibt die Sorte jeder Getreideprobe an.
Diese Übung ist Teil des Kurses
Unüberwachtes Lernen in Python
Anleitung zur Übung
Importieren:
pandas
alspd
.fcluster
vonscipy.cluster.hierarchy
.
Führe ein flaches hierarchisches Clustering durch, indem du die Funktion
fcluster()
aufmergings
verwendest. Gib eine maximale Höhe von6
und das Schlüsselwortargumentcriterion='distance'
an.Erstelle einen DataFrame
df
mit zwei Spalten namens'labels'
und'varieties'
und verwendelabels
bzw.varieties
für die Spaltenwerte. Das haben wir für dich getan.Erstelle eine Kreuztabelle
ct
zwischendf['labels']
unddf['varieties']
, um zu zählen, wie oft jede Getreidesorte mit jedem Cluster-Label übereinstimmt.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# Perform the necessary imports
import ____ as ____
from ____ import ____
# Use fcluster to extract 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)