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

Pandas拆分DataFrame列时split函数报expand参数无效如何解决

解决方案

你遇到的报错是因为Python原生的str.split()方法不支持expand参数,该参数是Pandas为Series.str.split()提供的专属参数,你通过apply调用原生字符串split方法时传入expand自然会触发参数非法错误。
另外你的原始ACT列带有['、']等多余符号,拆分前需要先清洗。

完整实现代码

写法1(简洁版)

import pandas as pd

# 1. 清洗ACT列多余符号,拆分后直接重索引补全4列,空值填充为'na'
act_split = df['ACT'].str.strip("[]'").str.split(',', expand=True).reindex(columns=[0,1,2,3], fill_value='na')
# 2. 重命名拆分后的列
act_split.columns = ['step1', 'step2', 'step3', 'step4']
# 3. 合并原表的MID、C_PG列得到最终结果
res_df = pd.concat([df[['MID', 'C_PG']], act_split], axis=1)

特殊情况处理

如果你的ACT列是实际的列表类型(而非字符串格式的列表),将第一步的清洗逻辑修改为取列表第一个元素即可:

act_split = df['ACT'].str[0].str.split(',', expand=True).reindex(columns=[0,1,2,3], fill_value='na')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 21:39:03