pandas 分析具有不同格式的日期列时出现错误

niwlg2el  于 2023-09-29  发布在  其他
关注(0)|答案(1)|浏览(104)

我的dataframe包括dd/mm/yy和dd/mm/yyyy格式的日期,但在将它们转换为pandas datetime时,它给出了以下错误:
ValueError:时间数据“02/11/21”与格式“%m/%d/%Y”不匹配,位于位置129。您可能想尝试:- 如果字符串格式一致,则传递format;- 如果你的字符串都是ISO 8601,但不一定是完全相同的格式,则传递format='ISO8601';- 传递format='mixed',并为每个元素单独推断格式。您可能希望在此旁边使用dayfirst
使用此代码df['date_column'] = pd.to_datetime(df['date_column'], format='%m/%d/%Y', errors='coerce'),它将大部分值转换为NaT

hk8txs48

hk8txs481#

使用%y表示年份的YY格式:

df['date_column'] = pd.to_datetime(df['date_column'], format='%m/%d/%y', errors='coerce')

如果同时存在年份格式YYYYYY,请用途:

df['date_column'] = (pd.to_datetime(df['date_column'], format='%m/%d/%y', errors='coerce') 
                       .fillna(pd.to_datetime(df['date_column'], 
                                              format='%m/%d/%Y', errors='coerce'))

相关问题