趋于均匀的聚类模式
既然您已经了解了随机种子对结果的影响,我们来看看 k-means 聚类在形成均匀簇方面的偏好。
接下来我们使用一个"鼠标形"数据集。"鼠标形"数据集指的是一组看起来像老鼠头部的点:共有 3 个环状分布的簇,分别对应老鼠的脸和两只耳朵。
下面是一个典型的"鼠标形"数据集示例(来源)。
数据存储在 pandas 的 DataFrame mouse 中。x_scaled 和 y_scaled 分别是数据点的标准化 X、Y 坐标对应的列名。
本练习是课程的一部分
Python 中的聚类分析
练习说明
- 在 SciPy 中导入
kmeans和vq函数。 - 使用
kmeans()函数并设置簇数为 3,生成聚类中心。 - 使用上一步生成的聚类中心,调用
vq()创建聚类标签。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Import the kmeans and vq functions
____
# Generate cluster centers
cluster_centers, distortion = ____
# Assign cluster labels
mouse['cluster_labels'], distortion_list = ____
# Plot clusters
sns.scatterplot(x='x_scaled', y='y_scaled',
hue='cluster_labels', data = mouse)
plt.show()