猿问

Pandas DataFrame 反向滚动窗口

有什么方法可以在不需要反转列的情况下执行反转滚动窗口?

我正在执行窗口标准化,对于我的实现来说,至关重要的是窗口将从最后开始滚动,同时向上移动每一步,将新值留在底部单元格。我附上了我的实施的当前状态:

dataframe['std']  = dataframe['temperature'].rolling(window=24).std()
dataframe['mean'] = dataframe['temperature'].rolling(window=24).mean()  
dataframe['normed'] = (dataframe['temperature'] - dataframe['mean']) / dataframe['std']

我的问题是标准化值是使用未来的测量值计算的。我想出的唯一解决方案是反转列并执行与之前相同的操作,然后再次反转它。它的问题是它可能需要很长时间,我想创建一个有效的算法。


智慧大石
浏览 129回答 1
1回答

HUX布斯

基于link1、link2、link3你会逃脱df["column_name"][::-1]或类似的东西另外:您可以用来.rolling(num).agg(["mean", "std"])浏览一次数据框
随时随地看视频慕课网APP

相关分类

Python
我要回答