所以我将csv文件加载到熊猫数据帧中没有任何问题。
df = pd.read_csv(filename,na_values=[""])
csv中有一列名为date_GMT的日期,其日期格式为Jun 29 2017-2:00 pm。问题在于,当我进行比较以过滤出示例时,会将此值视为字符串。如何将其视为日期。
df=df[(df['date_GMT'] < datetime.date(year=2017,month=8,day=25))]
我尝试了此操作,因为它无法比较字符串和日期,因此无法正常工作。
答案 0 :(得分:1)
在进行比较之前转换为datetime
:
df = pd.DataFrame({'col': ['Jun 29 2017 - 2:00pm', 'Sep 2 2018 - 4:00pm',
'Jan 15 2017 - 6:00am', 'Mar 29 2018 - 11:00pm']})
df['col'] = pd.to_datetime(df['col'])
print(df.loc[df['col'] < '2017-08-25'])
col
0 2017-06-29 14:00:00
2 2017-01-15 06:00:00
更好的是,您可以在读取文件时指定datetime
列:
df = pd.read_csv(filename, parse_dates=['date_GMT'])