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

如何按条件将数据聚合为多个不同的求和列?

多条件聚合为不同求和列的解决方案

嘿,我来帮你搞定这个多条件聚合求和的需求!看你给的数据集,是要把不同Category的Total按时间维度(比如小时)拆分汇总成单独的列对吧?下面给你几个常用的实现方法,总有一款适合你:

方法1:Excel 数据透视表(适合可视化快速操作)

如果是用Excel处理这份数据,数据透视表是最省心的选择:

  • 选中整个数据集(包括表头行)
  • 点击「插入」选项卡的「数据透视表」,按提示确认放置透视表的位置
  • 在右侧的透视表字段面板里做如下设置:
    • 把「DateTime」拖到「行」区域,右键点击它选择「分组」,设置按小时分组(刚好适配你每15分钟一条的数据频率)
    • 把「Category」拖到「列」区域
    • 把「Total」拖到「值」区域,确认汇总方式是「求和」
      这样就能得到每行对应一个小时、每列对应一个Category的求和结果,比如9点的Arf总和是4,Bork总和是2,完美符合你的需求。

方法2:SQL 查询(适合数据库批量处理)

如果数据存储在数据库表(假设表名为your_table),可以用条件聚合的方式直接查询出结果:

SELECT
    DATE_TRUNC('hour', DateTime) AS Hour,
    SUM(CASE WHEN Category = 'Arf' THEN Total ELSE 0 END) AS Arf_Total,
    SUM(CASE WHEN Category = 'Bork' THEN Total ELSE 0 END) AS Bork_Total
FROM your_table
GROUP BY DATE_TRUNC('hour', DateTime)
ORDER BY Hour;

原理很简单:用CASE语句判断每条记录的Category,只对目标类别的Total求和,然后按小时分组,最终得到每个时间区间下不同类别的单独求和列。

方法3:Python Pandas(适合数据分析自动化)

如果需要用代码自动化处理这类任务,Pandas的透视表功能可以轻松实现:

import pandas as pd

# 构造你的数据集(如果是从文件读取,用pd.read_csv即可)
df = pd.DataFrame({
    'DateTime': ['3/23/18 9:00 AM', '3/23/18 9:15 AM', '3/23/18 9:30 AM', '3/23/18 9:45 AM',
                 '3/23/18 10:00 AM', '3/23/18 10:15 AM', '3/23/18 10:30 AM', '3/23/18 10:45 AM',
                 '3/23/18 11:00 AM', '3/23/18 11:15 AM', '3/23/18 11:30 AM', '3/23/18 11:45 AM'],
    'Category': ['Bork', 'Arf', 'Bork', 'Arf', 'Bork', 'Arf', 'Bork', 'Arf', 'Bork', 'Arf', 'Bork', 'Arf'],
    'Total': [1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2]
})

# 转换时间格式并按小时分组透视
df['DateTime'] = pd.to_datetime(df['DateTime'])
aggregated_df = df.pivot_table(
    index=df['DateTime'].dt.floor('h'),  # 按小时向下取整分组
    columns='Category',
    values='Total',
    aggfunc='sum'
).reset_index()

# 重命名列名让结果更清晰
aggregated_df.columns = ['Hour', 'Arf_Total', 'Bork_Total']
print(aggregated_df)

运行这段代码后,你会得到一个结构化的DataFrame,包含每个小时对应的Arf和Bork的求和值,方便后续分析或导出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:48:47