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

如何在Excel或Python中按时间列条件对指定数值列进行分组求和

Excel实现方案
  • 先提取时间列的小时值:假设time列为A列,number列为B列,在空白列C2单元格输入公式=HOUR(A2),下拉填充所有行,即可得到每行记录对应的小时数值(0点返回0,2点返回2)。
  • 按小时分组求和有两种常用方式:
    1. SUMIF函数法:在D列列出需要统计的小时对应区间文本(如00:00 am - 00:59 am),E2单元格输入公式=SUMIF(C:C,LEFT(D2,2)*1,B:B),下拉后即可得到所有区间的求和结果。
    2. 数据透视表法:选中全量数据,点击「插入」-「数据透视表」,将time字段拖入行区域,number字段拖入值区域,值汇总方式选择「求和」,右键行区域的任意时间项选择「组合」,步长勾选「小时」,即可直接生成按小时区间分组的求和结果。
Python实现方案

依赖pandas库操作,代码示例如下:

import pandas as pd

# 读取数据,自动转换time列为时间格式
df = pd.read_excel("你的文件路径.xlsx", parse_dates=["time"])

# 按小时分组对number求和
sum_result = df.groupby(df["time"].dt.hour)["number"].sum().reset_index()

# 生成指定格式的时间区间列
sum_result["时间区间"] = sum_result["time"].apply(lambda x: f"{x:02d}:00 am - {x:02d}:59 am")

# 输出需要的列顺序
sum_result = sum_result[["时间区间", "number"]]
print(sum_result)

运行后输出的sum_result即为按指定区间分组求和的结果。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 12:42:03