gpt4 book ai didi

python - Pandas 数据框将长字符串列动态操作为 2 列

转载 作者:行者123 更新时间:2023-12-04 00:12:24 25 4
gpt4 key购买 nike

我有数据框:

<头>
身份证 问候名字
1 你好+彼得|再见+约翰
2 嗨+cheff|gutentag+rudolf|下午好+Alex

我想要

<头>
身份证 问候 名字
1 你好 彼得
1 再见 约翰
2 厨师
2 gutentag 鲁道夫
2 下午好 亚历克斯

我不知道,如何动态拆分列 greetingsname,以获得我想要的,因为列 greetingsname 具有不同的字符串长度。但是分隔符分布保持不变问候DELIMETER(+)名称DELIMETER(|)问候DELIMETER(+)名称

从这个意义上说,它可以有不同的长度(几个名字和问候,在另一列中不同数量的名字和问候)

谢谢

最佳答案

您可以为此使用爆炸:

df['greetingsname']=df['greetingsname'].apply(lambda x: x.split('|'))

res=df.explode('greetingsname')

print(res)

id greetingsname
0 1 hello+peter
0 1 goodbye+john
1 2 hi+cheff
1 2 gutentag+rudolf
1 2 goodafternoon+Alex

res[['greeting', 'name']] = res['greetingsname'].str.split('+', expand=True)

del res['greetingsname']

res.reset_index(drop=True, inplace=True)

print(res)

id greeting name
0 1 hello peter
1 1 goodbye john
2 2 hi cheff
3 2 gutentag rudolf
4 2 goodafternoon Alex

关于python - Pandas 数据框将长字符串列动态操作为 2 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68209758/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com