You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从K-means聚类生成的4个簇中分别提取数据?

从K-means聚类的每个簇中提取数据的方法

你已经成功完成K-means聚类并给数据集添加了clusterNo列,接下来提取每个簇的数据其实很简单,这里给你两种实用的方法:

方法1:批量获取所有簇的数据(适合批量分析)

如果想一次性整理好所有簇的数据,方便后续统一处理,可以用pandas的groupby方法把每个簇的数据存入字典,后续通过簇编号就能快速调用:

# 按clusterNo分组,将每个簇的数据存入字典
cluster_dict = {}
for cluster_id, group_data in df_new.groupby('clusterNo'):
    cluster_dict[cluster_id] = group_data
    print(f"已提取簇 {cluster_id},共包含 {len(group_data)} 条数据")

# 调用示例:获取簇0的数据集
cluster_0_data = cluster_dict[0]
# 查看簇0的前5条数据
print(cluster_0_data.head())

方法2:单独筛选单个簇的数据(适合针对性分析)

如果只需要分析某一个特定簇,直接用布尔索引筛选即可,操作更直接:

# 获取簇0的数据
cluster_0 = df_new[df_new['clusterNo'] == 0]

# 获取簇1的数据
cluster_1 = df_new[df_new['clusterNo'] == 1]

# 同理提取簇2和簇3
cluster_2 = df_new[df_new['clusterNo'] == 2]
cluster_3 = df_new[df_new['clusterNo'] == 3]

额外小技巧:快速查看簇的统计特征

如果想快速了解每个簇的数值特征分布,可以直接在groupby后调用describe():

# 输出所有簇的统计摘要(均值、中位数、标准差等)
cluster_statistics = df_new.groupby('clusterNo').describe()
print(cluster_statistics)

这样你就能根据自己的分析需求,灵活提取和查看每个簇的数据啦!

内容的提问来源于stack exchange,提问作者emrata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:00:44