首頁 >後端開發 >Python教學 >如何以未來兩個月的日期範圍過濾 Pandas DataFrame?

如何以未來兩個月的日期範圍過濾 Pandas DataFrame?

Susan Sarandon
Susan Sarandon原創
2024-11-17 12:11:02649瀏覽

How to Filter Pandas DataFrames by Date Range for the Next Two Months?

按日期範圍過濾 Pandas DataFrame

在 Pandas 中處理時間序列資料時,通常需要根據特定日期範圍過濾行。本文介紹如何有效過濾 Pandas DataFrame 以僅保留接下來兩個月內的行。

日期列作為索引

如果「日期」欄位設定為 DataFrame 的索引,您可以使用基於標籤的索引或位置索引來擷取所需的行。例如,要選擇日期在接下來兩個月內的行:

df.loc['2023-03-01':'2023-04-30']  # Label-based indexing
df.iloc[pd.date_range('2023-03-01', '2023-04-30', freq='D').index]  # Positional indexing

日期列不作為索引

如果「日期」欄位不是索引,您有兩個選擇:

  1. 將日期列轉換為索引:您可以將「日期」欄位暫時或永久轉換為索引,讓資料存取更輕鬆、更有效率。
  2. 使用布林索引:您可以使用邏輯運算和比較運算子根據「日期」列的值過濾行:
df[(df['date'] >= '2023-03-01') & (df['date'] <= '2023-04-30')]

請注意, .ix 存取器是已棄用,建議使用.loc 或.iloc 代替。

以上是如何以未來兩個月的日期範圍過濾 Pandas DataFrame?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn