我一直在运行一个输出两列数据的实验:
- 实验开始后的秒数( float )
- 测量。 ( float )
我现在想将其加载到 Pandas 中以重新采样并绘制测量值。我以前做过这个,但那些时候我的时间戳是从纪元开始或日期时间 (YYY-MM-DD HH:mm:ss) 格式。如果我将我的第一列作为整数加载,我将无法执行
data.resample('5Min', how='mean')
.如果我将我的第一列转换为 timedelta(seconds=...)
似乎也不可能。我的问题是,是否可以在不破坏纪元转换的情况下重新采样这些数据?
最佳答案
您可以使用 groupby
和 time//period
来执行此操作:
import pandas as pd
import numpy as np
t = np.random.rand(10000)*3600
t.sort()
v = np.random.rand(10000)
df = pd.DataFrame({"time":t, "value":v})
period = 5*60
s = df.groupby(df.time // period).value.mean()
s.index *= period
关于python - 如何重新采样时间增量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20270012/