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

Python中如何将KMeans聚类输出结果按label标签分组

KMeans聚类结果按标签分组实现方法

方法1:纯Python字典实现(无需额外依赖)

通过字典存储每个标签对应的坐标列表,遍历样本完成分类即可:

from sklearn.cluster import KMeans

kmeans = KMeans(n_clusters=5)
kmeans.fit(X)

centroid = kmeans.cluster_centers_
labels = kmeans.labels_

# 初始化分组字典,key为标签,value为对应坐标列表
label_groups = {i: [] for i in range(5)}
for coord, label in zip(X, labels):
    label_groups[label].append(coord)

# 按0-4的顺序输出分组结果
for label in sorted(label_groups.keys()):
    print(f"===== 标签{label}的样本 =====")
    for coord in label_groups[label]:
        print(f"coordinate: {coord}")

方法2:Pandas实现(适合后续需进一步做数据处理的场景)

import pandas as pd

# 拼接坐标和标签为DataFrame
df = pd.DataFrame(X, columns=["特征1", "特征2"])
df["label"] = labels

# 按标签分组
groups = df.groupby("label")
# 输出所有分组
for label, group_df in groups:
    print(f"===== 标签{label}的样本 =====")
    print(group_df[["特征1", "特征2"]].values)

如果需要单独提取某个标签的样本,比如标签0的所有数据,直接调用groups.get_group(0)即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 10:06:05