Иерархия акций
В главе 1 вы использовали метод k-средних для кластеризации компаний по движению их акций. Теперь вы проведёте иерархическую кластеризацию этих компаний. Вам дан массив NumPy с ценовыми движениями movements, где строки соответствуют компаниям, а также список названий компаний companies. Иерархическая кластеризация SciPy не встраивается в конвейер sklearn, поэтому вместо Normalizer потребуется использовать функцию normalize() из sklearn.preprocessing.
linkage и dendrogram уже импортированы из scipy.cluster.hierarchy, а PyPlot — как plt.
Это упражнение является частью курса
Обучение без учителя на Python
Инструкции к упражнению
- Импортируйте
normalizeизsklearn.preprocessing. - Масштабируйте ценовые движения каждой акции с помощью функции
normalize(), применив её кmovements. - Примените функцию
linkage()кnormalized_movements, указав метод'complete', чтобы вычислить иерархическую кластеризацию. Сохраните результат в переменнуюmergings. - Постройте дендрограмму иерархической кластеризации, используя список названий компаний
companiesв качествеlabels. Также укажите именованные аргументыleaf_rotation=90иleaf_font_size=6, как вы делали в предыдущем упражнении.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Import normalize
____
# Normalize the movements: normalized_movements
normalized_movements = ____
# Calculate the linkage: mergings
mergings = ____
# Plot the dendrogram
____
plt.show()