如何重新采样具有零阶保持的分组数据帧?

问题描述

我有一个包含一系列不同测量值的数据框(每个测量值在 measurements 列中都有一个唯一 ID),并且每 10 毫秒采集一次测量样本。

现在我想对所有数据进行下采样以“伪造”不同的采样时间,例如40 毫秒,用于所有测量。

我实现了如下所示的重采样,但现在我卡住了:我不想在重采样器对象上执行 .mean() 之类的聚合,因为这会处理来自相应 40 毫秒 bin 中所有样本的信息.

df.set_index('timedelta',inplace=True)
df.index = pd.to_timedelta(df.index,unit='S')
df= df_resampled.groupby('measurement').resample('40ms')

相反,我只想获取重新采样的 40 毫秒区间内的第一个值并保留它 - 基本上,只需每 40 毫秒选择一次最新的给定值。

有没有一种优雅的方式来做到这一点?

编辑:找到了。简单地忽略了 .first() 作为实现我在文档中想要的内容的内置方式:https://pandas.pydata.org/pandas-docs/version/0.25.1/reference/resampling.html#

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)