我的这张表带有字符串定界符“ +”
ID Products
1 A + B + C + D + E ...
2 A + F + G
3 X + D
我想以这种格式返回
ID Products Product 1 Product 2 Product 3 Product 4 Product 5 product...
1 A + B + C + D + E ... A B C D E ...
2 A + F + G A F G
3 X + D X D
1 D + C + C + D + E D C C D E
如何在Pandas Dataframe中重现此内容?
答案 0 :(得分:1)
将Series.str.split
与正则表达式O(n^2)
一起使用-表示一个或多个空格,转义的'\s+\+\s+'
,一个或多个空格,然后用DataFrame.add_prefix
更改列名并最后添加到由DataFrame.join
原创:
+
还可以根据需要更改列名:
df1 = df['Products'].str.split('\s+\+\s+', expand=True).add_prefix('Product').fillna('')
df = df.join(df1)
print (df)
ID Products Product0 Product1 Product2 Product3 Product4
0 1 A + B + C + D + E A B C D E
1 2 A + F + G A F G
2 3 X + D X D