如何将字符串日期时间表示转换为pandas中的日期时间字段?

问题描述 投票:0回答:1

我有一个 csv ,其中包含文本数据(示例如下)。

id   |  name     |   date                     
    
123 |   abc   |  2024-08-05T21:00:26:074Z 
456 |  efg    |  2024-08-05T21:34:30.502z 

我想根据日期字段过滤数据,为此,我尝试将日期时间字符串读取/转换为日期字段,但得到以下错误=>这会抛出一个错误,时间数据'2024-08-05T21:34:30.502 Z" 与格式“%Y-%m-%dT%H:%M:%S%z” 不匹配,位置...

问题 - 我真的不需要这个日期字段的时间部分。有没有办法忽略这一点并将其余部分转换为日期字段?

import pandas as pd

df = pd.read_csv('test.csv')

df['formatted_date'] = pd.to_datetime(df['date'])

filtered_df = df[df['formatted_date'] > '2024-08-05']
python pandas dataframe datetime
1个回答
0
投票

由于您只需要日期,因此可以将格式定义为

%Y-%m-%d
并使用
exact=False
:

pd.to_datetime(df['date'], format='%Y-%m-%d', exact=False)

输出:

0   2024-08-05
1   2024-08-05
Name: date, dtype: datetime64[ns]
© www.soinside.com 2019 - 2024. All rights reserved.