如何在Python中基于分隔符的熊猫数据框中的值从内部的值创建新行?

我有如下数据框。我想将列 zip 中的值拆分为行值,如下所示。这些值可以_ ,.由这些分隔符分隔。这如何在 python 中完成。


输入


df.head(5)


    Date    Item_Code   Type    Zip

    1/1/2020    A   Long    07_08_09

    12/4/2020   B   Small   AB_CD_EF_GF

    13/4/2020   A   Long    08_14

    1/5/2020    A   Long    

    21/5/2020   B   Small   09,07,16

    22/5/2020   B   Small   AB,07

预期产出


Date    Item_Code   Type    Zip

1/1/2020    A      Long    07

1/1/2020    A      Long    08

1/1/2020    A      Long    09

12/4/2020   B      Small   AB

12/4/2020   B      Small   CD

12/4/2020   B      Small   EF

12/4/2020   B      Small   GF

13/4/2020   A      Long    08

13/4/2020   A      Long    14

1/5/2020    A      Long 

21/5/2020   B      Small   09

21/5/2020   B      Small   07

21/5/2020   B      Small   16

22/5/2020   B      Small   AB

22/5/2020   B      Small   07


GCT1015
浏览 67回答 1
1回答

慕田峪4524236

首先使用Series.str.splitwitg 正则表达式,然后分配回DataFrame.assign然后使用DataFrame.explode,我还在最后一步创建了默认的唯一索引:df1 = (df.assign(Zip = df['Zip'].str.split('[_ ,\.]'))         .explode('Zip')         .reset_index(drop=True))print (df1)         Date Item_Code   Type  Zip0    1/1/2020         A   Long   071    1/1/2020         A   Long   082    1/1/2020         A   Long   093   12/4/2020         B  Small   AB4   12/4/2020         B  Small   CD5   12/4/2020         B  Small   EF6   12/4/2020         B  Small   GF7   13/4/2020         A   Long   088   13/4/2020         A   Long   149    1/5/2020         A   Long  NaN10  21/5/2020         B  Small   0911  21/5/2020         B  Small   0712  21/5/2020         B  Small   1613  22/5/2020         B  Small   AB14  22/5/2020         B  Small   07
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python