Aan de slagGa gratis aan de slag

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

Cursus bekijken

Oefeninstructies

  • Importeer normalize uit sklearn.preprocessing.
  • Herschal de koersbewegingen voor elk aandeel met de functie normalize() op movements.
  • Pas de functie linkage() toe op normalized_movements met 'complete' linkage om de hiërarchische clustering te berekenen. Ken het resultaat toe aan mergings.
  • Plot een dendrogram van de hiërarchische clustering, met de lijst companies van bedrijfsnamen als labels. Geef daarnaast de keyword-argumenten leaf_rotation=90 en leaf_font_size=6 op, 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()
Code bewerken en uitvoeren