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

能否通过Pandas的resample方法按星期时段聚合Excel数据?

使用Pandas处理Excel数据:按星期时分分组聚合的实现方案

嘿,这个需求完全可以搞定!其实用groupby结合日期格式化会是最直接的方案,不过你问的resample也能实现,我给你一步步拆解:

第一步:读取并预处理数据

首先我们要把Excel里的Date字段解析成Pandas的datetime类型,这样才能方便后续的日期格式化操作:

import pandas as pd

# 读取Excel文件,自动解析Date列为datetime类型
df = pd.read_excel('your_data.xlsx', parse_dates=['Date'])

第二步:生成「星期几 时分」格式的Week Time列

接下来我们把Date字段转换成你需要的格式,这里分两种情况:

  • 如果需要英文星期(比如"Tuesday 10:40"):
df['Week Time'] = df['Date'].dt.strftime('%A %H:%M')
  • 如果需要中文星期(比如"星期二 10:40"),需要先设置本地化环境:
import locale
# Windows系统用'Chinese_Simplified',Linux/macOS可调整为'zh_CN.UTF-8'
locale.setlocale(locale.LC_TIME, 'Chinese_Simplified')
df['Week Time'] = df['Date'].dt.strftime('%A %H:%M')

方案一:用groupby实现分组聚合(推荐)

这是最贴合你需求的方式,直接按生成的Week Time列分组,然后聚合sum、count、avg三个指标:

# 聚合计算:sum是count字段的总和,record_num是记录条数,avg_count是count字段的平均值
agg_result = df.groupby('Week Time').agg(
    total_count=('count', 'sum'),
    record_num=('count', 'size'),
    avg_count=('count', 'mean')
).reset_index()

# 查看最终结果
print(agg_result)

运行后你就能得到每个「星期几 时分」对应的三个统计指标了。

方案二:用resample实现(进阶技巧)

resample本身是针对时间间隔的重采样(比如按小时、按周),但我们可以通过一些技巧让它适配你的需求:

  1. 先把Date列的“年/月/日”部分替换成固定值,只保留星期和时分的信息(比如把所有日期都映射到某一周的对应星期几,这样同一星期几同一时分的记录就会被归为同一个时间点)
  2. 把处理后的时间设为索引,再用resample按分钟级重采样,最后聚合指标:
# 构造一个固定基准的datetime,保留原日期的星期和时分信息
df['resample_time'] = pd.to_datetime('2023-01-01') + \
                      df['Date'].dt.dayofweek.days + \
                      df['Date'].dt.time.apply(lambda x: pd.Timedelta(hours=x.hour, minutes=x.minute))

# 设置索引并执行resample聚合
resample_result = df.set_index('resample_time').resample('T').agg(
    total_count=('count', 'sum'),
    record_num=('count', 'size'),
    avg_count=('count', 'mean')
).reset_index()

# 把resample_time转成「星期几 时分」格式,去掉多余列
resample_result['Week Time'] = resample_result['resample_time'].dt.strftime('%A %H:%M')
resample_result = resample_result.drop('resample_time', axis=1)

# 查看结果
print(resample_result)

不过要注意,这种方法其实是绕了个弯,不如groupby直接高效,所以更推荐第一种方案。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 09:00:42