从字符串中提取带空格的整数

时间:2019-03-12 13:53:46

标签: python regex pandas extract

我是regex的新手,所以我在代码方面苦苦挣扎。

我有一个数据帧df,其结构如下:

                                    NAME  PERCENT
0     APPLE COMPANY A  57 638 232 stocks  0.12322
1  BANANA 1 COMPANY B  12 946 201 stocks  0.02768
2     ORANGE COMPANY C  8 354 229 stocks  0.01786

df = pd.DataFrame({
    'NAME': ['APPLE COMPANY A  57 638 232 stocks', 'BANANA 1 COMPANY B  12 946 201 stocks', 'ORANGE COMPANY C  8 354 229 stocks'],
    'PERCENT': [0.12322, 0.02768 , 0.01786]
    })

我想从NAME中提取整数,但不是所有整数(请注意,在第1行中有BANANA 1 COMPANY B,在这里我想忽略{{1}之前的整数1 }。我只想提取COMPANY之前的那些整数。

我希望输出看起来像这样:

stocks

到目前为止,我只有这个,不能满足我的需求。

                 NAME  PERCENT    STOCKS
0     APPLE COMPANY A  0.12322  57638232
1  BANANA 1 COMPANY B  0.02768  12946201
2    ORANGE COMAPNY C  0.01786   8354229

编辑:请注意,库存数量可能会从数千种变为数百万种,这意味着没有模式。

1 个答案:

答案 0 :(得分:3)

regex将提取您要查找的内容

\d+\s\d+\s\d+

匹配项:

57 638 232

12 946 201

8 354 229

发件人:

'NAME': ['APPLE COMPANY A  57 638 232 stocks', 'BANANA 1 COMPANY B  12 946 201 stocks', 'ORANGE COMPANY C  8 354 229 stocks']