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

如何按指定条件拆分pandas Series并提取对应区间的文本

Pandas Series指定区间文本提取方案

错误原因

你原来连续调用str.split的写法不合法:第一次按/拆分后得到的是元素为列表的Series,不能直接对整个列表再次调用str.split,必须先取出/后的片段,再做二次处理。

最优解法(正则提取,逻辑简单不易错)

直接用str.extract匹配目标区间的内容,代码如下:

import pandas as pd

# 正则含义:匹配/后到(或数字出现前的所有内容,自动忽略前后空格
result = data['source'].str.extract(r'/\s*([^\d(]+?)\s*', expand=False)

拆分法实现(如果你想用拆分逻辑完成)

# 第一步按/拆分取后半段,第二步按(或数字拆分取前半段,最后去掉首尾空格
result = data['source'].str.split('/').str[1]\
         .str.split(r'\(|\d', n=1).str[0]\
         .str.strip()

输出结果

运行上述代码后得到的结果和你预期一致:

0     Bundaberg
1      Doncaster
2     Angle Park
3     Nottingham
4      Cannington
5       Manawatu
6     Albion Park
Name: source, dtype: object

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 23:45:04