【发布时间】:2021-05-12 07:58:18
【问题描述】:
我有一个如下的数据框:
A B
0 33590104 3359017;3359011;3359031
1 53340311 5334012
2 160750035 16075131;16075132;16075135;16075046
3 10510044 1051012;1051097;1051010;1051051;1051089;105106...
4 51540061 5154036
我希望 A 中的每个值都有行,B 中的每个值都用 ';' 分隔如下所示
A B
33590104 3359017
33590104 3359011
33590104 3359031
53340311 5334012
160750035 16075131
160750035 16075132
160750035 16075135
160750035 16075046
等等……
我的想法是首先将 B 列中的字符串转换为列表。例如:
A B
0 33590104 [3359017,3359011,3359031]
1 53340311 [5334012]
2 160750035 [16075131,16075132,16075135,16075046]
然后使用explode功能。但我不知道如何使用分隔符';'转换字符串到一个列表。我也不知道到底有多少个字符串被 ';' 分隔在每一行。正如您在上面的示例中所见,它因每一行而异。
【问题讨论】:
-
I don't know exactly how many strings are separated by ';'你不用担心,series.str.split(";")会帮你搞定