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

如何将Pandas DataFrame中长度不一的字符串列从右侧拆分为多列

字符串列右侧拆分实现方案

Pandas提供了Series.str.rsplit()方法,专门用于从字符串右侧开始按指定分隔符拆分,完全适配需求,具体实现如下:

核心代码

import pandas as pd

# 示例DataFrame,可替换为你自己的数据集
df = pd.DataFrame({
    'Col_1': ['Hello X Y', 'Hello world Q R', 'Hi S T'],
    'Col_2': ['A', 'B', 'C']
})

# 从右侧拆分,最多拆分2次,生成3个新列
split_res = df['Col_1'].str.rsplit(pat=' ', n=2, expand=True)
# 为拆分后的列命名,可按需修改名称
split_res.columns = ['prefix_col', 'second_last_col', 'last_col']

# 合并拆分结果到原DataFrame
df = pd.concat([df, split_res], axis=1)

参数说明

  • pat=' ':指定空格为拆分分隔符
  • n=2:限制最多拆分2次,无论开头部分是1个还是2个单词,都会完整保留在第一个拆分结果列中
  • expand=True:直接返回DataFrame格式的拆分结果,无需额外格式转换

运行结果

执行上述代码后,得到的最终DataFrame如下:

Col_1 Col_2   prefix_col second_last_col last_col
0       Hello X Y     A        Hello               X        Y
1 Hello world Q R     B  Hello world               Q        R
2          Hi S T     C           Hi               S        T

可选边界处理

如果存在部分行末尾不足2个单词的场景,可补充空值填充逻辑避免后续报错:

split_res = df['Col_1'].str.rsplit(' ', n=2, expand=True).fillna('')

内容的提问来源于stack exchange,提问作者K-83Rick

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 11:15:05