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

如何对含浮点型连续时间索引的Pandas DataFrame重采样统计每秒事件数?

处理浮点型时间索引的整秒事件统计

当你的DataFrame索引是代表秒数的浮点数时,确实没法直接用resample(它只支持datetime类索引),不过我们可以用分组+索引取整的方式轻松实现需求,核心思路就是把每个浮点索引映射到它所在的整秒区间,再按区间分组求和。

具体实现步骤

  • 第一步:给每个浮点索引生成对应的整秒分组键——用np.floor()对索引做向下取整,比如0.2秒会被归到0秒区间,1.9秒归到1秒区间,完美匹配整秒的左闭右开区间逻辑。
  • 第二步:用这个分组键对DataFrame分组,然后对value列求和,就能得到每个整秒内的事件总数。

示例代码

先基于你给出的示例数据,加上统计逻辑:

import pandas as pd
import numpy as np

# 生成示例数据:0到5秒,步长0.2秒,value是0或1
df = pd.DataFrame(data={'value': np.random.randint(0,2,25)}, index = np.arange(0,5,0.2))

# 简洁写法:直接按索引的向下取整结果分组求和
event_count_per_second = df.groupby(np.floor(df.index))['value'].sum()

# 输出结果
print(event_count_per_second)

如果你想更清晰地看到分组逻辑,也可以先新增一列存储整秒区间标识,再分组:

# 显式生成分组列的写法
df['second_interval'] = np.floor(df.index)
event_count_per_second = df.groupby('second_interval')['value'].sum()

结果说明

输出的event_count_per_second是一个Series,索引是整秒数(比如0、1、2...),对应的值就是该整秒区间内事件(value=1)的发生次数,完全匹配你的统计需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 21:02:33