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

Pandas:ID列去重、统计重复数并聚合Axis列

解决方案

直接用Pandas的groupby配合聚合函数就能实现需求,代码如下:

1. 构造示例数据

import pandas as pd

# 匹配你的原始数据创建DataFrame
data = {
    'ID': [1, 1, 1, 2, 2, 3, 4, 4],
    'Axis': ['1 2 3 4', '0 1 2 3', '4 5 2 4', '7 8 9 10', '1 2 3 4', '6 7 8 9', '1 2 3 4', '0 1 2 3']
}
df = pd.DataFrame(data)

2. 分组聚合操作

# 按ID分组,统计重复次数并拼接Axis为列表
result = df.groupby('ID').agg(
    count=('ID', 'size'),  # 统计每组行数,即对应ID的重复次数
    Axis=('Axis', list)    # 将每组的Axis值拼接成列表
).reset_index()  # 把ID从索引转为普通列,匹配期望输出格式

最终输出

运行后得到的结果与你期望的一致:

ID  count                                  Axis
0   1      3  [1 2 3 4, 0 1 2 3, 4 5 2 4]
1   2      2        [7 8 9 10, 1 2 3 4]
2   3      1                  [6 7 8 9]
3   4      2        [1 2 3 4, 0 1 2 3]

如果你的Axis列存储的是数值数组而非字符串,上述代码逻辑完全适用,list聚合函数会自动把数组元素打包成列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 10:55:16