基于ID中共同值的不规则范围平均值计算需求
嘿,这个分组求平均的需求太普遍啦!针对你那13000+行、596个唯一ID的数据集,我给你两种超实用的方案,分别适配表格工具和代码处理的场景:
方案一:用Excel/Google Sheets快速搞定(无需写代码)
如果你习惯用可视化表格工具,数据透视表是处理这种大数据分组统计的最优解,比函数更高效:
- 选中你的整个数据集(一定要包含表头哦,比如A列是「唯一ID」,B列是「对应数值」)
- 插入数据透视表:
- Excel:点击「插入」选项卡 → 选择「数据透视表」,按提示确认数据范围和放置位置
- Google Sheets:点击「数据」菜单 → 选择「数据透视表」
- 配置透视表字段:
- 把唯一ID列拖到「行」区域
- 把数值列拖到「值」区域,然后点击值字段的下拉菜单,选择「值字段设置」,将汇总方式从默认的「求和」改成「平均值」
- 搞定!几秒钟就能生成所有596个唯一ID的对应平均值,还能随时刷新数据。
方案二:用Python Pandas处理(适合自动化/后续分析)
如果需要代码化处理,或者之后还要做更多数据分析,Pandas绝对是你的不二之选,处理这种规模的数据毫无压力:
# 导入Pandas库 import pandas as pd # 读取你的数据集(假设是CSV格式,如果是Excel就用pd.read_excel) df = pd.read_csv("your_dataset.csv") # 按唯一ID列分组,计算数值列的平均值,重置索引让结果更规整 mean_result = df.groupby("unique_id_column")["value_column"].mean().reset_index() # 把结果保存成新的CSV文件(可选) mean_result.to_csv("grouped_averages.csv", index=False)
简单解释下:
groupby("unique_id_column"):按指定的唯一ID列进行分组.mean():对每组的数值列计算平均值reset_index():把分组后的索引转换为普通列,方便查看和后续处理
因为你的数值都是正小数,这两种方法都能完美适配,不会出现计算异常的问题,而且处理13000行数据的速度都快得很~
内容的提问来源于stack exchange,提问作者SMac
相关产品推荐
相关产品推荐

