根据字符串python pandas中的逗号数将列转换为多列

时间:2014-07-30 13:10:52

标签: python pandas

我的数据框如下所示。

专注于第9列。我想将逗号之后的每个字符串转换为新列。所以在第9栏第4行,“Cal。,Cal。'我喜欢' Ca。'留在第9栏和第39栏。'进入第10栏。

这是理想的输出(对于带有多个逗号的选择行)

      9      10     11    12
1    Alas.
4    Ca.     Cal.
13   Il.     Ills.  Ill

enter image description here

1 个答案:

答案 0 :(得分:1)

izip_longest的经典案例,在第9列上作为系列进行操作。你最后需要另一个转置,因为你想把它们放在行上。

from itertools import izip_longest
new_cols = DataFrame(list(izip_longest(*df[9].apply(lambda x:x.split(",")), fillvalue=""))).T

然后只需将新列添加到DataFrame即可。