Pandas DataFrame:将值拆分到一个单元格中并创建新列

问题描述 投票:0回答:1

我想用符号“|”分割值(对象数据类型)并创建新列,其中包含每个分割值。

我的意图是拆分并仅使用第一个和第二个。

例如 来自:

致:

我尝试了下面的代码,但有错误

Main = df['Category'].str.split('|').get(0)
Sub = df['Category'].str.split('|').get(1)

df['Main'], df['Sub'] = (Main, Sub)

请分享您的解决方案。

谢谢

pandas string split
1个回答
0
投票

代码

使用expand=True

df[['Main', 'Sub']] = df['Category'].str.split('|', expand=True)[[0, 1]]

示例代码

df = pd.DataFrame({'Category': ['A|B|C|D', 'A|B|C']})
© www.soinside.com 2019 - 2024. All rights reserved.