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

Python DataFrame中如何将日期的点替换为横杠?

解决DataFrame日期列符号替换异常问题

你遇到的问题是因为pandas的Series.replace()方法默认逻辑和预期不符:
直接使用replace('.','-')时,若触发正则匹配(部分场景下为默认行为),.作为正则通配符会匹配任意单个字符,导致每个字符都被替换成-,最终出现一串横线。

可行解决办法

方法1:使用str.replace()(推荐)

这是pandas中处理字符串子串替换的专用方法,默认替换元素内所有匹配的子串,无需处理正则转义:

df2['DATE'] = df2['DATE'].str.replace('.', '-')

方法2:修正replace()的正则参数

如果坚持使用replace(),需要转义.(让它作为普通点号匹配)并明确开启正则匹配:

df2['DATE'] = df2['DATE'].replace(r'\.', '-', regex=True)

可选优化:转为标准日期类型

替换完成后,建议将该列转为标准日期格式,方便后续时间相关操作:

import pandas as pd
df2['DATE'] = pd.to_datetime(df2['DATE'], format='%d-%m-%Y')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 22:15:27