我有一列以出生日期作为对象,问题是当我尝试将其转换为日期时间时,因为它始终显示下一个警告
时间数据“27126”与格式“%d/%m/%Y”不匹配(匹配)
date
0 05/06/1980
1 31/07/1947
2 07/01/1963
3 26/03/1973
4 30/01/1991
5 12/12/1991
6 13/08/1987
7 10/01/1944
8 23/06/1965
9 08/10/1995
到目前为止,我已经尝试了以下代码:
df['date'] = pd.to_datetime(df['date'], format='%d/%m/%Y')
df['date'] = df['date'].apply(lambda x: datetime.datetime.strptime(x, "%d/%m/%Y").strftime("%Y-%m-%d"))
df['date'] = pd.to_datetime(df['date'].str.strip(), format='%d/%m/%Y')
最佳答案
添加参数 errors='coerce'
以将不匹配的日期时间转换为缺失值,此处为 NaT
:
df['date'] = pd.to_datetime(df['date'], format='%d/%m/%Y', errors='coerce')
关于python - 将包含日期信息作为对象的列转换为日期时间时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59951378/