1
我有類似如下的數據框:熊貓獲得最小總在移動窗口
df=pd.Series(index=pd.date_range(start='1/1/2017', end='1/10/2017', freq='D'),
data=[5,5,2,1,3,4,5,6,7,8])
df
Out[216]:
2017-01-01 5
2017-01-02 5
2017-01-03 2
2017-01-04 1
2017-01-05 3
2017-01-06 4
2017-01-07 5
2017-01-08 6
2017-01-09 7
2017-01-10 8
Freq: D, dtype: int64
我想,以確定具有最小總價值3天期間的開始日期。因此,在此示例中,2017-01-03到2017-01-05在這3天內的最小值爲6。
有沒有辦法做到這一點沒有循環通過每3天的窗口?
其結果將是:
2017-01-03 6
如果有多個窗口具有相同的最低金額,結果可以爲每一個記錄。
這是偉大的。爲了澄清我是否想將窗口大小更改爲4(作爲示例),它將是df ['New'] = df.rolling(4).sum()。shift(-3).values。那是對的嗎? – AJG519
@ AJG519是的,你得到它 – Wen
@ AJG519你可以接受這個最優秀的解決方案。 –