解決Pandas DataFrame 中的缺失日期
使用Pandas DataFrame 分析資料時,常會遇到以下情況:Pandas DataFrame 中存在空白或缺失日期資料集。這可能會導致繪製或操作資料時出現困難。
例如,考慮一個資料幀,其中某些日期有多個事件,但其他日期沒有事件。雖然 idx 變數(日期範圍)的大小保持不變,但 s 系列(表示按日期的事件計數)可能僅包含 idx 中日期的子集。因此,嘗試繪製這些系列可能會導致錯誤,因為兩個資料集的大小不匹配。
解決此問題的一種方法是使用計數為 0。這將允許形成一個完整的圖表,其中沒有事件的日期的值為 0。為此,您可以使用 Pandas Series 的 reindex 方法。
reindex 方法可讓您指定缺失值的索引,並用指定值填入這些值。在這種情況下,您可以提供 idx 系列作為新索引,並為缺少的日期指定填入值 0。
以下範例:
import pandas as pd idx = pd.date_range('09-01-2013', '09-30-2013') s = df.groupby(['simpleDate']).size() s.index = pd.DatetimeIndex(s.index) s = s.reindex(idx, fill_value=0)
此程式碼將建立一個系列s 包含 idx 範圍內的所有日期,對於 s 中原本不存在的日期,值為 0。然後,您可以根據 idx 中的日期繪製該系列,以獲得完整的圖表,其中缺少的日期表示為零值。
以上是如何處理 Pandas DataFrame 中缺少的日期以進行準確繪圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!