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

如何将英文格式日期转为%d/%m/%Y格式?解决pd.to_datetime匹配报错

解决方法

你的报错原因是指定的日期格式与原始数据格式不匹配:你用了%d/%m/%Y(要求输入为日/月/年格式),但原始数据是日 英文月份全称 年的结构,两者无法匹配,因此触发ValueError。

要将数据转换为目标格式,分两步操作:

1. 将字符串转换为datetime对象

使用pd.to_datetime,指定与原始数据匹配的格式%d %B %Y(%B代表英文月份全称):

import pandas as pd
df['Timestamp'] = pd.to_datetime(df['Timestamp'], format="%d %B %Y")

2. 格式化为目标字符串格式

用dt.strftime将datetime对象转成日/月/年的字符串格式,其中%m会自动将月份补为两位数:

df['Timestamp'] = df['Timestamp'].dt.strftime("%d/%m/%Y")

合并写法(一步完成)

也可以把两步合并成一行代码:

df['Timestamp'] = pd.to_datetime(df['Timestamp'], format="%d %B %Y").dt.strftime("%d/%m/%Y")

执行后,你的Timestamp列就会变成:

Timestamp
19/11/2022
1/05/2022

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 08:05:01