Hierarchien der Bestände
In Kapitel 1 hast du das k-means Clustering verwendet, um Unternehmen nach ihren Aktienkursen zu gruppieren. Jetzt führst du ein hierarchisches Clustering der Unternehmen durch. Du erhältst ein NumPy-Array mit Preisbewegungen movements
, wobei die Zeilen den Unternehmen entsprechen, und eine Liste mit den Unternehmensnamen companies
. Das hierarchische Clustering von SciPy passt nicht in eine Sklearn-Pipeline, daher musst du die Funktion normalize()
von sklearn.preprocessing
anstelle von Normalizer
verwenden.
linkage
und dendrogram
wurden bereits von scipy.cluster.hierarchy
importiert, und PyPlot wurde als plt
importiert.
Diese Übung ist Teil des Kurses
Unüberwachtes Lernen in Python
Anleitung zur Übung
- Importiere
normalize
vonsklearn.preprocessing
. - Skaliere die Kursbewegungen für jede Aktie mit Hilfe der Funktion
normalize()
aufmovements
neu. - Wende die Funktion
linkage()
aufnormalized_movements
an und verwende die Verknüpfung'complete'
, um das hierarchische Clustering zu berechnen. Weise das Ergebnismergings
zu. - Zeichne ein Dendrogramm der hierarchischen Clusterung, indem du die Liste
companies
der Unternehmensnamen alslabels
verwendest. Außerdem gibst du die Schlüsselwortargumenteleaf_rotation=90
undleaf_font_size=6
an, wie du es in der vorherigen Übung getan hast.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# Import normalize
____
# Normalize the movements: normalized_movements
normalized_movements = ____
# Calculate the linkage: mergings
mergings = ____
# Plot the dendrogram
____
plt.show()