Pandas 系列'str.extractall(~)
提取物全部使用正则表达式匹配的子字符串。
注意
要提取第一个匹配项而不是所有匹配项,请使用 str.extract(~)
。
参数
1. pat
| str
要匹配的正则表达式。
2. flags
| int
| optional
从 re
库设置的标志(例如 re.IGNORECASE
)。可以通过将多个标志与按位 |
组合来设置它们(例如 re.IGNORECASE | re.MULTILINE
)。
返回值
多索引 DataFrame。
例子
基本用法
考虑以下 DataFrame :
import pandas as pd
df = pd.DataFrame({'A':['k23','45k','67k89']}, index=['a','b','c'])
df
A
a k23
b 45k
c 67k89
要获取与给定正则表达式匹配的提取子字符串:
df['A'].str.extractall('(\d+)') # returns a multi-index DataFrame
0
match
a 0 23
b 0 45
c 0 67
1 89
这里,输入字符串是一个正则表达式,\d+
表示一个数字,而()
表示我们要提取的部分。
由于生成的 DataFrame 是一个多索引,因此我们可以获得特定索引的匹配,如下所示:
df_result = df['A'].str.extractall('(\d+)')
df_result.loc['c']
0
match
0 67
1 89
多个捕获组
考虑以下 DataFrame :
import pandas as pd
df = pd.DataFrame({'A':['k23','45y','67k89']}, index=['a','b','c'])
df
A
a k23
b 45y
c 67k89
我们可以使用多个括号捕获多个组:
df['A'].str.extractall('(\d+)([ky])')
0 1
match
b 0 45 y
c 0 67 k
相关用法
- Python Pandas Series str extract方法用法及代码示例
- Python Pandas Series str split方法用法及代码示例
- Python Pandas Series str center方法用法及代码示例
- Python Pandas Series str pad方法用法及代码示例
- Python Pandas Series str replace方法用法及代码示例
- Python Pandas Series str len方法用法及代码示例
- Python Pandas Series str lower方法用法及代码示例
- Python Pandas Series str strip方法用法及代码示例
- Python Pandas Series str rstrip方法用法及代码示例
- Python Pandas Series str lstrip方法用法及代码示例
- Python Pandas Series string contains方法用法及代码示例
- Python Pandas Series to_list方法用法及代码示例
- Python Pandas Series between方法用法及代码示例
- Python Pandas Series map方法用法及代码示例
- Python Pandas Series hasnans属性用法及代码示例
- Python Pandas Series is_monotonic属性用法及代码示例
- Python Pandas Series to_frame方法用法及代码示例
- Python Pandas Series zfill方法用法及代码示例
- Python Pandas Series argmax方法用法及代码示例
- Python Pandas Series is_monotonic_increasing属性用法及代码示例
- Python Pandas Series is_unique属性用法及代码示例
- Python Pandas Series argmin方法用法及代码示例
- Python Pandas Series value_counts方法用法及代码示例
- Python Pandas Series is_monotonic_decreasing属性用法及代码示例
- Python Pandas Series.cumsum()用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas Series str | extractall method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。