我有一个数据帧,其中的数据行以一秒为间隔,所以08:00:00、08:00:01等。我想在10分钟的时间内进行滚动平均值,但我只想滚动平均值每分钟更新一次。因此,08:10:00-08:10:59的滚动平均值都将是相同的值,然后在8:11:00它将在下一分钟更新为新值。
目前,我正在使用以下行来计算每秒更新的滚动平均值:
df['counts-avg'] = df['counts'].rolling(window=600).mean()
我还有秒列的另一列,称为df ['sec']。我得到了秒数= 0(每分钟的零秒)的行的索引,并用np.nan替换了每隔一行。然后,我使用fillna(method ='ffill')向下复制值。
df['counts-avg'] = df['counts'].rolling(window=600).mean()
erase_idx = df[df['sec'] > 0].index.values
ma = df['counts-avg']
ma.loc[erase_idx] = np.nan
ma = ma.fillna(method='ffill')
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句