python - Pandas 从字符串中提取数字

标签 python string python-3.x pandas

给定以下数据框:

import pandas as pd
import numpy as np
df = pd.DataFrame({'A':['1a',np.nan,'10a','100b','0b'],
                   })
df

    A
0   1a
1   NaN
2   10a
3   100b
4   0b

我想从每个单元格(它们存在的地方)中提取数字。 期望的结果是:

    A
0   1
1   NaN
2   10
3   100
4   0

我知道这可以用 str.extract 来完成,但我不确定怎么做。

最佳答案

给它一个正则表达式捕获组:

df.A.str.extract('(\d+)')

给你:

0      1
1    NaN
2     10
3    100
4      0
Name: A, dtype: object

关于python - Pandas 从字符串中提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37683558/

相关文章:

python - 在python3中的csv文件的特定行之后添加一个新行

python - Azure数据工厂管道: Creating pipelines with Python: Authentication (via az cli)

python - 像 excel 列一样重复字母?

python - 自定义对象检测 train.py - 错误 : Chunk at

python - 如何在 PyQt 中创建自定义形状 QPushBtn

python - 将 DICOM 转换为 TIFF

c - 如何在C中将字符串格式化为排队格式?

string - VBA 修剪留下前导空白

python - 无法从网页中获取文本

python-3.x - Python套接字: how to detect and list connected clients in server in the other clients and how to update it when a client disconnected?