【问题标题】:Regex to extract numbers length >4, from a dataframe column正则表达式从数据框列中提取长度> 4的数字
【发布时间】:2021-07-27 09:24:48
【问题描述】:

要提取长度 >4 的数字,使用数据框列中的正则表达式,我有以下几行:

import pandas as pd

data = {'Company': ["0652369- INTER SUPPORT LLP, 202011",
"CIRCLE TRADING LTD 1-593616, 2020-06, 0201",
"Area  Food Service Co., Ltd.-6958047, 2020-07"]}

df = pd.DataFrame(data)

df['co'] = df['Company'].str.extract('(\d+).{5,}')
print (df['co'])

输出:

0    0652369
1          1
2    6958047

第二行不正确,它将返回“593616”。

正确的写法是什么?谢谢。

【问题讨论】:

    标签: regex pandas dataframe


    【解决方案1】:

    尝试提取(\d{5,}):

    df['co'] = df['Company'].str.extract('(\d{5,})')
    
    #                                          Company       co
    # 0             0652369- INTER SUPPORT LLP, 202011  0652369
    # 1     CIRCLE TRADING LTD 1-593616, 2020-06, 0201   593616
    # 2  Area  Food Service Co., Ltd.-6958047, 2020-07  6958047
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-11-17
      • 2013-06-04
      • 1970-01-01
      • 2013-02-06
      • 2021-11-09
      • 2012-03-18
      • 1970-01-01
      相关资源
      最近更新 更多