我有一个熊猫数据帧,它有原始心率数据和时间索引(以秒为单位)。你知道吗
我正在尝试对数据进行分类,以便获得用户定义窗口的平均值(例如10秒)-不是滚动平均值,只是10秒的平均值,然后是10秒的后续值,等等
import pandas as pd
hr_raw = pd.read_csv('hr_data.csv', index_col='time')
print(hr_raw)
heart_rate
time
0.6 164.0
1.0 182.0
1.3 164.0
1.6 150.0
2.0 152.0
2.4 141.0
2.9 163.0
3.2 141.0
3.7 124.0
4.2 116.0
4.7 126.0
5.1 116.0
5.7 107.0
使用上面的示例数据,我希望能够设置一个用户定义的窗口大小(让我们使用2秒),并生成一个新的数据帧,该数据帧的索引为2秒增量,如果时间落在该窗口中,则平均“心率”值(应继续到数据帧的末尾)。你知道吗
例如:
heart_rate
time
2.0 162.40
4.0 142.25
6.0 116.25
我似乎只能找到基于预定数量的容器(例如,制作直方图)对数据进行分类的方法,而这只返回计数/频率。你知道吗
谢谢。你知道吗
正如coldspeed所指出的,4s会考虑2秒,但是,如果你需要2倍桶的话,你可以
应该由
groupby
来做。你知道吗请注意,我们的答案之间存在轻微差异的原因是排除了上限。也就是说,2.0秒的读数将被视为4.0秒的时间间隔。通常是这样做的,使用
TimeGrouper
的类似解决方案将产生相同的结果。你知道吗相关问题 更多 >
编程相关推荐