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

Pandas拆分字符串为固定3列:处理含可变数量分隔值的Series

解决方案

你可以在拆分后通过reindex方法强制指定输出3列,缺失列自动填充空值:

import pandas as pd

# 测试输入:只有前两种格式的字符串
s = pd.Series(['a', 'a - b'])
res = s.str.split(' - ', expand=True).reindex(columns=[0, 1, 2], fill_value='')
print(res)

输出结果:

0  1 2
0  a
1  a  b

如果需要避免异常字符串拆分出超过3部分的情况,可以给split方法加n=2参数,最多拆分2次:

res = s.str.split(' - ', n=2, expand=True).reindex(columns=[0, 1, 2], fill_value='')

该方法对所有三种输入场景(只有单段、只有两段、三段格式共存)都能输出固定3列的结果。

内容的提问来源于stack exchange,提问作者Asish M.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 07:27:05