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中文网其他相关文章!