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

Python处理DataFrame:如何计算[SOME_TEXT]长度以提取日期?

从DataFrame字符串列中动态提取日期的方法

直接提取日期(推荐)

不用纠结前置文本的长度,用正则表达式可以精准匹配目标日期格式,不管[SOME_TEXT]内容怎么变都能生效:

import pandas as pd

# 提取第一个下划线后紧跟的DD/MM/YYYY格式日期
df['date'] = df['Column_with_date'].str.extract(r'_(\d{2}/\d{2}/\d{4})')[0]

正则表达式_(\d{2}/\d{2}/\d{4})会定位第一个下划线,然后捕获后面10位的日期格式,直接提取到新列中,即使字符串后续出现[或]也不会干扰结果。

计算[SOME_TEXT]长度的方法

如果一定要通过前置文本长度调整截取位置,用str.find('_')就能获取第一个下划线的索引值,这个值就是[SOME_TEXT]的长度(因为索引从0开始,下划线的位置正好对应前面字符的总数):

# 计算每条数据中[SOME_TEXT]的长度
df['prefix_length'] = df['Column_with_date'].str.find('_')

# 根据长度截取日期部分
df['date'] = df.apply(lambda row: row['Column_with_date'][row['prefix_length']+1 : row['prefix_length']+11], axis=1)

这里row['prefix_length']+1是日期的起始位置,+11是结束位置(因为DD/MM/YYYY刚好占10个字符)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 06:01:07