首页 > 后端开发 > Python教程 > 如何从 Pandas 中的非数字字符串中提取数字?

如何从 Pandas 中的非数字字符串中提取数字?

Mary-Kate Olsen
发布: 2024-10-24 14:15:02
原创
753 人浏览过

How to Extract Numbers from Non-Numeric Strings in Pandas?

Pandas:从字符串中提取数字

在 Pandas 中处理数据框时,通常需要从包含非-数字字符。这可能具有挑战性,但 Pandas 提供了多种方法来帮助您实现这一目标。

使用 str.extract() 进行数字提取

一种从字符串是str.extract()。此方法允许您指定定义要捕获的数字数据的正则表达式模式。

考虑以下数据框:

<code class="python">import pandas as pd
import numpy as np
df = pd.DataFrame({'A':['1a',np.nan,'10a','100b','0b'],
                   })
print(df)</code>
登录后复制

输出:

    A
0   1a
1   NaN
2   10a
3   100b
4   0b
登录后复制

要从每个单元格中提取数字,您可以使用以下正则表达式:

<code class="python">df.A.str.extract('(\d+)')</code>
登录后复制

正则表达式模式 (d ) 捕获一个或多个数字的任何序列。模式两边的括号创建一个捕获组,用于返回字符串的匹配部分。

输出:

0      1
1    NaN
2     10
3    100
4      0
Name: A, dtype: object
登录后复制

如您所见,所需的数字已成功获取从每个单元格中提取,即使是那些包含非数字字符的单元格。请注意,此方法仅适用于整数,不适用于浮点数。

以上是如何从 Pandas 中的非数字字符串中提取数字?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板