You need to enable JavaScript to run this app. Pandas如何按date列日期计算value列平均值并扩展到全表
优惠活动
大模型
产品
解决方案
定价
更多

Pandas如何按date列日期计算value列平均值并扩展到全表

按日期列分组计算数值列平均值的解决方案

基于pandas实现该需求核心用到分组聚合方法groupby,具体实现逻辑如下:

基础实现(仅计算value列的日平均值)

按date列分组后,对value列执行平均值聚合即可,示例代码如下:

import pandas as pd

# 构造示例数据集
data = {
    'value': [10,13,14,5,9,11,5,18,40,5],
    'date': ['2004-10-03']*5 + ['2004-11-03']*5
}
df = pd.DataFrame(data)

# 按date分组计算value的平均值
date_avg = df.groupby('date')['value'].mean()
print(date_avg)

输出结果与预期一致:

date
2004-10-03    10.2
2004-11-03    15.8
Name: value, dtype: float64

扩展到整个DataFrame的实现

如果DataFrame包含多个需要计算日平均值的数值列,直接对整个分组后的对象执行mean()方法即可,会自动对所有支持数值运算的列计算分组平均值:

# 全列按日期分组计算平均值
all_col_avg = df.groupby('date').mean()
print(all_col_avg)

如果需要保留原表的行结构,把平均值作为新列追加到原DataFrame中,可以搭配transform方法实现:

df['daily_value_avg'] = df.groupby('date')['value'].transform('mean')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 08:06:07