Jerarquías de acciones
En el capítulo 1, utilizaste la agrupación de k-medias para agrupar empresas según los movimientos de sus cotizaciones bursátiles. Ahora, realizarás la agrupación jerárquica de las empresas. Se te da una matriz NumPy de movimientos de precios movements
, donde las filas corresponden a empresas, y una lista de los nombres de las empresas companies
. La agrupación jerárquica de SciPy no encaja en una canalización de sklearn, por lo que tendrás que utilizar la función normalize()
de sklearn.preprocessing
en lugar de Normalizer
.
linkage
y dendrogram
ya se han importado de scipy.cluster.hierarchy
, y PyPlot se ha importado como plt
.
Este ejercicio forma parte del curso
Aprendizaje no supervisado en Python
Instrucciones del ejercicio
- Importa
normalize
desdesklearn.preprocessing
. - Reescala los movimientos de precios de cada acción utilizando la función
normalize()
enmovements
. - Aplica la función
linkage()
anormalized_movements
, utilizando el enlace'complete'
, para calcular la agrupación jerárquica. Asigna el resultado amergings
. - Traza un dendrograma de la agrupación jerárquica, utilizando la lista
companies
de nombres de empresas comolabels
. Además, especifica los argumentos de las palabras claveleaf_rotation=90
, yleaf_font_size=6
como hiciste en el ejercicio anterior.
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
# Import normalize
____
# Normalize the movements: normalized_movements
normalized_movements = ____
# Calculate the linkage: mergings
mergings = ____
# Plot the dendrogram
____
plt.show()