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

如何用Pandas高效去除时间序列日度季节性 替代慢速嵌套循环

优化方案

你需要的逻辑可以通过pandas原生的分组向量化操作实现,和你原始嵌套循环的计算结果完全一致,运行效率可提升百倍以上。

你原始代码的核心逻辑是:每个观测值减去对应列、对应15分钟时段(即index%96值相同的所有行)的均值,直接用groupby+transform即可实现,代码如下:

df = df - df.groupby(df.index % 96).transform('mean')

如果你的DataFrame索引是DatetimeIndex类型,也可以用时间属性分组,可读性更强,计算逻辑完全等价:

df = df - df.groupby([df.index.hour, df.index.minute]).transform('mean')

性能说明

原始嵌套循环是Python层的逐元素迭代,每次迭代都伴随索引筛选的额外开销,针对你提到的876列、1个月时长的数据,优化后的向量化代码可在毫秒级完成计算。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 01:36:10