簡體   English   中英

需要在熊貓數據框中按月過濾日期

[英]Need to filter dates by month in pandas dataframe

以 2010-01-01 格式獲取跨越多年的溫度數據。 我想從六月中分離出臨時數據,但不確定如何過濾它。 通常我使用的方法是df[df['date'] == 2016]但這只能按年份解析。

IIUC,您可以在日期時間之上使用日期時間方法來訪問月份

impot pandas as pd
rng = pd.date_range('2010-01-01','2011-01-01',freq='D')
df = pd.DataFrame({'dates':rng})

數據幀的打印頭。

print(df.head(5))
     dates
0 2010-01-01
1 2010-01-02
2 2010-01-03
3 2010-01-04
4 2010-01-05

使用.loc訪問器通過 dt.month 方法過濾數據框:

df.loc[df['dates'].dt.month == 2]
     dates
31 2010-02-01
32 2010-02-02
33 2010-02-03
34 2010-02-04
35 2010-02-05
36 2010-02-06

使用pd.to_datetime確保您的日期是正確的日期時間對象

使用print(df.dtypes)檢查數據類型。

您可以使用方法dt.month_name()

df[df['date'].dt.month_name() == 'June']

暫無
暫無

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

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