具有2010-01-01格式的多年温度数据。我想隔离6月份的临时数据,但不确定如何过滤。通常,我使用的方法是df[df['date'] == 2016],但这只能按年进行解析。
发布于 2019-11-24 06:14:10
您可以使用dt.month_name()方法
df[df['date'].dt.month_name() == 'June']发布于 2019-11-24 05:50:12
IIUC,您可以在datetime之上使用datetime方法来访问月份
impot pandas as pd
rng = pd.date_range('2010-01-01','2011-01-01',freq='D')
df = pd.DataFrame({'dates':rng})打印头的DataFrame。
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确保您的日期是正确的datetime对象
使用print(df.dtypes)检查数据类型。
https://stackoverflow.com/questions/59012385
复制相似问题