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

如何用Pandas按日期属性分组JSON对象并求和attribute1

按日期分组求和attribute1的Pandas实现

实现步骤

  • 导入pandas和json库
  • 加载原始JSON数据并提取需要处理的列表(原JSON结构完全保留)
  • 将列表转换为Pandas DataFrame
  • 按日期分组,对attribute1字段求和

完整代码示例

import pandas as pd
import json

# 模拟你的原始JSON数据(实际场景可通过json.load(open('你的文件路径.json'))读取)
raw_json = {
  "myroot": [{
              "attribute1": 10,
              "date":"2023-08-01"
                },
                {
                  "attribute1": 5,
              "date":"2023-08-02"
                },
                {
                  "attribute1": 100,
              "date":"2023-08-02"
                },
                {
                  "attribute1": 2,
              "date":"2023-08-01"
                }]
}

# 仅提取需要处理的列表,原JSON结构丝毫不改
data_list = raw_json["myroot"]

# 转换为Pandas表格格式,方便分组计算
df = pd.DataFrame(data_list)

# 按date字段分组,对每组的attribute1求和
sum_result = df.groupby('date')['attribute1'].sum().reset_index()

# 打印最终结果
print(sum_result)

代码说明

  • 原始JSON数据raw_json全程不会被修改,只是读取其中的myroot列表用于计算
  • groupby('date')负责把相同日期的行归为一组,['attribute1'].sum()对每组的数值求和,reset_index()把分组后的索引转为普通列,让结果更易读

运行结果

date  attribute1
0  2023-08-01          12
1  2023-08-02         105

如果需要把求和结果转回JSON格式(比如生成新的统计结构),可以加这段代码:

# 将结果转为字典列表,再包装成自定义JSON结构(原JSON仍未改动)
result_json = {"sum_by_date": sum_result.to_dict('records')}
print(result_json)

输出示例:

{'sum_by_date': [{'date': '2023-08-01', 'attribute1': 12}, {'date': '2023-08-02', 'attribute1': 105}]}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 01:52:14