【问题标题】:Split pandas on large white space在大空白区域拆分熊猫
【发布时间】:2018-04-08 16:54:12
【问题描述】:

我需要将以下数据框(单列)拆分为三个,用大空格分隔:

df =

0       boots 0330            on 31 mar          clp n...
1       tesco stores 6292     on 31 mar          clp n...
2       uniqlo                on 31 mar          clp n...

我需要:

                 column_0      column_1          column_2
0       boots 0330            on 31 mar          clp n...
1       tesco stores 6292     on 31 mar          clp n...
2       uniqlo                on 31 mar          clp n...

我尝试与partition分开:

df.str.partition(' on ')

但它给出了:

                                                     0      1                            2
0                                  boots 0330              on   31 mar          clp nan nan
1                                  tesco stores 6292       on   31 mar          clp nan nan
2                                  uniqlo                  on   31 mar          clp nan nan

它错过了“on mar xx”的整个列。有什么简单的解决方案?

【问题讨论】:

    标签: python pandas text split


    【解决方案1】:

    我认为需要 split 通过正则表达式 \s{2,} - 2 or more whitespacesadd_prefix

    df = s.str.split('\s{2,}', expand=True).add_prefix('column_')
    print (df)
    
                column_0   column_1  column_2
    0         boots 0330  on 31 mar  clp n...
    1  tesco stores 6292  on 31 mar  clp n...
    2             uniqlo  on 31 mar  clp n...
    

    【讨论】:

      猜你喜欢
      • 2013-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多