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

如何在Pandas DataFrame中保留年份并移除年份后的所有内容?

解决DataFrame日期字段保留至年份的问题

你的原始DataFrame:

id date
1  21 July 2023 (abcd)
2  22 July 2023 00:00:01
3  23 July 2023 -abcda

需要处理为仅保留至年份的格式:

id date
1  21 July 2023
2  22 July 2023
3  23 July 2023

之前的代码因为拆分后丢弃了年份,无法满足需求。这里提供两种通用方法,适配任意四位数字年份:

方法一:用str.extract提取目标内容

df['date'] = df['date'].str.extract(r'(.*\d{4})')

正则表达式(.*\d{4})会匹配从字符串开头到最后一个四位数字(年份)的全部内容,精准保留需要的日期部分。

方法二:用str.replace移除多余内容

df['date'] = df['date'].str.replace(r'(^\w+ \w+ \d{4}).*', r'\1', regex=True)

这个正则会匹配完整的“日 月 年份”部分,将年份之后的所有内容替换为空,直接得到目标格式。

两种方法都能处理你给出的所有日期场景,且无需硬编码固定年份。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 06:32:36