1
我想使用pd.rolling_mean()作爲保持最大信息標準的平滑函數。這意味着端點根據可用信息的不同進行計算。窗口= 3,center = True的示例如下:熊貓:使用帶最大信息標準的rolling_mean()作爲平滑函數?
For Example: Window = 3, Center = True
ts_smooth[0] = 1/2 * ts[0] + 1/2 * ts[1]
ts_smooth[0<n<N-1] = 1/3 * ts[n-1] + 1/3 * ts[n] + 1/3 * ts[n+1]
ts_smooth[N] = 1/2 * ts[N-1] + 1/2 * ts[N]
在熊貓中實現此目的的最佳方法是什麼?
- 計算rolling_mean()爲中點
- 寫功能來替換基於窗口大小的結束條件?
關鍵字參數''min_periods''可能是初步認識。 ''pd.rolling_mean(np.arange(5),3,center = True,min_periods = 0)''給出''[0.5,1.,2.,3.,nan]''。在正確的軌道上。 – 2013-03-05 02:47:57
神祕地,傳遞給''min_periods''的_any_值將結果的第一個元素從''nan''改爲''0''。這可能是一個錯誤。 – 2013-03-05 02:54:33
如果沒有將中心設置爲真,則對於任何第i個元素,如果首先收集時間段[i-2,i-1,i]中的元素,如果在這些時間段中發現的元素數量小於min_periods,則會返回楠。雖然將min_periods設置爲1,但它僅收集元素0,因此它會返回均值0.一旦將min_periods設置爲1以上,它將返回nan,因爲您只收集1個元素。 – waitingkuo 2013-03-05 03:35:54