You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pd.to_datetime转换月份年字符串时报unconverted data remains错误如何解决

错误原因

你爬取得到的Name列字符串末尾带有多余空白字符,你指定的匹配格式%B %Y只能匹配「月份英文全称+空格+4位年份」的组合,末尾多出的空白无法被格式匹配,因此抛出残留未转换数据的报错。

解决方案
  1. 先清理Name列前后的所有空白字符
df['Name'] = df['Name'].str.strip()
  1. 再执行日期转换操作,根据你的需求选择对应写法:
  • 如果你需要的是pandas datetime类型(会自动补全为当月第一天的日期格式,可直接用于时间序列计算):
df['Name'] = pd.to_datetime(df['Name'], format='%B %Y')
  • 如果你需要的是YYYY-MM-DD格式的字符串:
df['Name'] = pd.to_datetime(df['Name'], format='%B %Y').dt.strftime('%Y-%m-%d')

如果清理空白后仍有报错,可以给pd.to_datetime添加errors='coerce'参数,转换失败的行就会被赋值为NaT空值,方便你定位异常数据行:

df['Name'] = pd.to_datetime(df['Name'], format='%B %Y', errors='coerce')

内容的提问来源于stack exchange,提问作者younggotti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 15:15:03