Pandas - 在某些单元格中分割字符串

时间:2017-03-27 15:26:26

标签: python pandas dataframe split

我有一个列,有些单元格有多个我要分割的值,所以它们会进入一个新行。

这是我的数据框中的一个示例:

        index   ref_made_call
0   58  Sean Wright
1   115 Nick Buchert
2   191 James Williams
3   196 Jason Phillips
4   266 Scott Wall
5   272 Curtis Blair
6   390 Bennett Salvatore
7   490 Derrick Stafford
8   600 Kevin Cutler
9   683 Josh Tiven
10  816 Bennett Salvatore
11  1014    Joe Crawford
12  1255    Scott Foster,Sean Wright

我想拆分Scott Foster,Sean Wright,以便数据框看起来像:

        index   ref_made_call
0   58  Sean Wright
1   115 Nick Buchert
2   191 James Williams
3   196 Jason Phillips
4   266 Scott Wall
5   272 Curtis Blair
6   390 Bennett Salvatore
7   490 Derrick Stafford
8   600 Kevin Cutler
9   683 Josh Tiven
10  816 Bennett Salvatore
11  1014    Joe Crawford
12  1255    Scott Foster
13       Sean Wright

我已经调查了this,但它并没有成就我想要的东西。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

使用str.split + stack

df.set_index('index') \
    .ref_made_call.str.split(',', expand=True) \
    .stack().reset_index(-1, drop=True) \
    .reset_index(name='ref_made_call')

    index      ref_made_call
0      58        Sean Wright
1     115       Nick Buchert
2     191     James Williams
3     196     Jason Phillips
4     266         Scott Wall
5     272       Curtis Blair
6     390  Bennett Salvatore
7     490   Derrick Stafford
8     600       Kevin Cutler
9     683         Josh Tiven
10    816  Bennett Salvatore
11   1014       Joe Crawford
12   1255       Scott Foster
13   1255        Sean Wright