3
我想使用pandas.rolling_sum
函數DataFrame
使用任何數據可用於每個窗口(所以當窗口超出可用數據時不返回NaN
)總結窗口。下面是一些樣本數據:熊貓rolling_sum與中心和min_periods
import pandas as pd # version 0.12.0 (Python 2.7)
df = pd.DataFrame([1]*4+[2]*4,
index=pd.date_range('2014-1-1', periods=8, freq='D'),
columns=['num'])
df.head()
# num
# 2014-01-01 1
# 2014-01-02 1
# 2014-01-03 1
# 2014-01-04 1
# 2014-01-05 2
下面是基本的,中心的滾動總和......
pd.rolling_sum(df, 7, center=True)
# num
# 2014-01-01 NaN
# 2014-01-02 NaN
# 2014-01-03 NaN
# 2014-01-04 10
# 2014-01-05 11
# 2014-01-06 NaN
# 2014-01-07 NaN
# 2014-01-08 NaN
我想消除NaN
值和使用的任何數據是每個窗口中提供。我的直覺是,min_periods
選擇將照顧這...
pd.rolling_sum(df, 7, center=True, min_periods=0)
# num
# 2014-01-01 4
# 2014-01-02 6
# 2014-01-03 8
# 2014-01-04 10
# 2014-01-05 11
# 2014-01-06 NaN
# 2014-01-07 NaN
# 2014-01-08 NaN
這個工程在使用center=True
不居中的窗口,但我很困惑,爲什麼最後三個值丟失。我期待的最後三個值是...
# 2014-01-06 10
# 2014-01-07 9
# 2014-01-08 8
任何人都可以解釋爲什麼min_periods
正在對第一觀察,但使用center=True
選項時,在最後的觀察失敗?什麼是修復?