DataFrame日期列(object类型)转datetime格式报错求助
解决日期格式转换报错问题
错误原因
你使用的格式符%Y代表4位年份,但你的日期字符串是2位年份(比如"23"对应2023),格式不匹配因此触发ValueError。
解决方案
把格式字符串里的%Y替换为%y(%y专门匹配2位年份,会自动解析为4位年份,默认映射到2000-2099区间):
df['date'] = pd.to_datetime(df['date'], format='%y/%m/%d')
另外注意你代码里写的df1['date'],如果你的DataFrame变量名是df,这里要改成df['date']避免变量名错误。
额外说明
如果需要自定义2位年份的映射区间(比如把"23"解析为1923而非2023),可以结合datetime模块的strptime和replace方法,但大多数场景下用%y就足够满足需求。
内容的提问来源于stack exchange,提问作者Sattai
相关产品推荐
相关产品推荐

