提问者:小点点

将日期列(字符串)转换为日期时间并匹配格式


我试图将下一个日期列(str)转换为datetime64,并说格式不匹配,有人能帮我吗

专栏:

df[“日期”]

0 15/7/21 ... 2541 13/9/21数据类型:对象

我所尝试的:

pd.to_datetime(df["日期"],格式="%d/%m/%Y")

时间数据'15/7/21'与格式'%d/%m/%Y'不匹配(匹配)

我还尝试:

警察局。to_datetime(df[“Date”].astype(“datetime64”),格式=“%d/%m/%Y”)

它将其转换为datetime,但有一个日期,即月份中的某一天。

有人知道该怎么做吗?


共1个答案

匿名用户

%Y预计年数为4位数。使用两位数年份的%y(参见文档):

>>> import pandas as pd
>>> df = pd.DataFrame({'Date':['15/7/21','13/9/21']})
>>> df['Date']
0    15/7/21
1    13/9/21
Name: Date, dtype: object
>>> pd.to_datetime(df['Date'].astype('datetime64'),format='%d/%m/%y')
0   2021-07-15
1   2021-09-13
Name: Date, dtype: datetime64[ns]

请注意,pandas非常擅长猜测格式:

>>> pd.to_datetime(df['Date'])
0   2021-07-15
1   2021-09-13