开始使用免费开始使用

宝可梦目击:层次聚类

我们将继续上一练习中对传说宝可梦目击地点的调查。回想一下,上一题的散点图中,您发现有两个目击点密集的区域。这意味着这些点大致可分为两个簇。本练习中,您将使用层次聚类将这些目击记录分成两个聚类。

"x""y" 是目击位置的 X、Y 坐标列,存放在 pandas 的 DataFrame df 中。以下库可用:matplotlib.pyplotpltseabornsns,以及 pandaspd

本练习是课程的一部分

Python 中的聚类分析

查看课程

练习说明

  • 导入 linkagefcluster 库。
  • 使用 linkage() 函数以 ward 方法计算距离。
  • 使用 fcluster() 函数生成两个聚类下每个数据点的聚类标签。
  • 使用 seaborn 绘制散点图,并为不同聚类分配不同颜色。

交互式实操练习

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

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

# Use the linkage() function to compute distance
Z = ____(____, 'ward')

# Generate cluster labels
df['cluster_labels'] = ____(____, ____, criterion='maxclust')

# Plot the points with seaborn
sns.scatterplot(x=____, y=____, hue=____, data=df)
plt.show()
编辑并运行代码