使用 pandas 資料幀時,經常會遇到資料集中缺少日期的情況。這可能會在執行繪圖或計算統計資料等操作時導致錯誤。
考慮這樣的情況:您的資料框在給定日期有多個事件或在某個日期沒有事件。如果按日期將資料框分組並對事件進行計數,則最終可能會得到一個日期範圍少於原始範圍的系列。當嘗試根據原始日期範圍繪製系列時,這可能會導致錯誤。
此問題的解決方案是將缺失的日期加到計數為 0 的系列中。這可以使用重新索引來實現功能。 reindex函數接受一個新的索引作為參數,並用指定的值(預設為NaN)填充缺失值。
import pandas as pd idx = pd.date_range('09-01-2013', '09-30-2013') s = pd.Series({'09-02-2013': 2, '09-03-2013': 10, '09-06-2013': 5, '09-07-2013': 1}) s.index = pd.DatetimeIndex(s.index) s = s.reindex(idx, fill_value=0)
上面的程式碼使用reindex將缺失的日期加到series s中,填充值為 0。這會產生一個包含“09-01-2013”到“09-30-2013”範圍內所有日期且計數為 0 的系列沒有發生任何事件的日期。
以上是如何填入 Pandas DataFrame 中缺少的日期?的詳細內容。更多資訊請關注PHP中文網其他相關文章!