簡體   English   中英

熊貓DatetimeIndex +季節性分解=缺少頻率

[英]Pandas DatetimeIndex + seasonal_decompose = missing frequency

我試圖做一個seasonal_decompose我的熊貓數據幀,但我已經遇到了,我不能讓過去的錯誤。 我的時間序列數據包含按時間順序排列的時間間隔,考慮到我的數據是股票價格,這是明智的選擇(在市場交易時間后會出現這些時間間隔,以及不同的月份長度等)。 數據本身可以被認為是連續的,但是熊貓似乎不想推斷任何頻率。

我的所有時間范圍數據(1m,5m,15m ... 1D,1M)均已正確填充,但頻率設置為“無”。 我的算法在實例化時創建一個空的數據幀,並在算法運行時過程中隨着數據的到達通過loc向其添加值。 因此,也許這就是最終導致頻率為“無”的原因(因為在生成所有數據后通常會使用熊貓)。

我嘗試使用以下命令在seasonal_decompose之前明確設置頻率:

data.index.freq = data.index.freq or to_offset(timeframe.Timespan).freqstr

其中timeframe.Timespan是python timedelta對象。 結果字符串是准確的(“ D”,因為時間跨度是每天),但是會出現以下錯誤:

ValueError:推斷的頻率從傳遞的值無不符合傳遞的頻率D

所以我不能在索引上明確設置頻率嗎? 我該如何解決? 無論如何,如何從這些字符串中得出頻率整數(傳遞給seasonal_decompose )? 我也不允許更改data.index.inferred_freq的值,所以這不是一個選擇。

聽起來您需要的是DataFrame.asfreq

data = data.asfreq(data.index.freq or to_offset(timeframe.Timespan).freqstr)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM