开始使用免费开始使用

层次聚类:ward 方法

是时候参加 Comic-Con 了!Comic-Con 是在全球主要城市举办的年度漫画主题大会。您掌握了去年的客流数据,即在任一时刻会场内的人数。您希望确定摊位位置以最大化销售。请使用 ward 方法进行层次聚类,找出该区域内的两个吸引点。

数据保存在 pandas 的 DataFrame comic_con 中。x_scaledy_scaled 是某一时刻人群位置的标准化 X、Y 坐标对应的列名。

本练习是课程的一部分

Python 中的聚类分析

查看课程

练习说明

  • scipy.cluster.hierarchy 导入 fclusterlinkage
  • linkage() 函数中使用 ward 方法。
  • 通过对 distance_matrix 形成 2 个扁平簇来分配簇标签。
  • 运行绘图代码以查看结果。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Import the fcluster and linkage functions
from scipy.cluster.hierarchy import ____, ____

# Use the linkage() function
distance_matrix = ____(comic_con[['x_scaled', 'y_scaled']], ____ = ____, metric = 'euclidean')

# Assign cluster labels
comic_con['cluster_labels'] = ____(____, ____, criterion='maxclust')

# Plot clusters
sns.scatterplot(x='x_scaled', y='y_scaled', 
                hue='cluster_labels', data = comic_con)
plt.show()
编辑并运行代码