查詢指定日期範圍內的DataFrame 行
此問題解決了從包含以下內容的DataFrame 中提取特定日期範圍內的行的挑戰:日期欄。提供的解決方案提供了兩種實現此目的的方法。
方法 1:使用布林遮罩
要採用此方法,請確保 DataFrame 中的「日期」代表資料類型為 datetime64[ns] 的系列。採用以下步驟:
方法 2:分配DatetimeIndex
最優涉及頻繁選擇日期的場景,此方法涉及將日期列設置為index:
範例:
利用回應中提供的程式碼,請考慮以下插圖:
import pandas as pd df = pd.DataFrame({'date': pd.date_range('2023-03-01', periods=10)}) df['value'] = np.random.randn(10) # Boolean Mask Approach start_date = '2023-03-03' end_date = '2023-03-08' mask = (df['date'] > start_date) & (df['date'] <= end_date) df_subset = df.loc[mask] # DatetimeIndex Approach df = df.set_index('date') df_subset = df.loc[start_date:end_date]
這將產生兩個DataFrame ,其中包含與指定日期對應的行範圍。
以上是如何以日期範圍有效過濾 DataFrame 行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!