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

如何用Pandas将单列拆分为多列?两种场景实现方法咨询

Pandas实现两种列拆分需求

先构造示例DataFrame(模拟你的输入数据):

import pandas as pd

df = pd.DataFrame({'category': ['apple, banana, orange, grape']})

需求一:保留首元素到category列,其余合并到sub category列

通过字符串拆分后提取首元素,剩余元素重新拼接即可:

# 按", "拆分字符串,得到列表形式的结果
split_list = df['category'].str.split(', ', expand=False)

# 构造目标DataFrame1
df1 = pd.DataFrame({
    'category': split_list.str[0],  # 取列表第一个元素
    'sub category': split_list.str[1:].str.join(', ')  # 剩余元素用", "拼接
})

需求二:每个元素单独放在一列

利用str.split的expand=True参数直接拆分到多列,再重命名列名:

# 拆分字符串并展开为多列
split_df = df['category'].str.split(', ', expand=True)

# 重命名列,第一列为category,后续为sub category1、sub category2...
df2 = split_df.rename(columns={0: 'category'})
df2.columns = ['category'] + [f'sub category{i+1}' for i in range(len(df2.columns)-1)]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 20:50:25