Hiërarchieën van aandelen
In hoofdstuk 1 gebruikte je k-means clustering om bedrijven te groeperen op basis van hun aandelenkoersbewegingen. Nu ga je hiërarchische clustering op de bedrijven toepassen. Je krijgt een NumPy-array met koersbewegingen movements, waarbij de rijen overeenkomen met bedrijven, en een lijst met bedrijfsnamen companies. SciPy hiërarchische clustering past niet in een sklearn-pijplijn, dus je moet de functie normalize() uit sklearn.preprocessing gebruiken in plaats van Normalizer.
linkage en dendrogram zijn al geïmporteerd uit scipy.cluster.hierarchy, en PyPlot is geïmporteerd als plt.
Deze oefening maakt deel uit van de cursus
Unsupervised Learning in Python
Oefeninstructies
- Importeer
normalizeuitsklearn.preprocessing. - Herschal de koersbewegingen voor elk aandeel met de functie
normalize()opmovements. - Pas de functie
linkage()toe opnormalized_movementsmet'complete'linkage om de hiërarchische clustering te berekenen. Ken het resultaat toe aanmergings. - Plot een dendrogram van de hiërarchische clustering, met de lijst
companiesvan bedrijfsnamen alslabels. Geef daarnaast de keyword-argumentenleaf_rotation=90enleaf_font_size=6op, zoals je in de vorige oefening deed.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Import normalize
____
# Normalize the movements: normalized_movements
normalized_movements = ____
# Calculate the linkage: mergings
mergings = ____
# Plot the dendrogram
____
plt.show()