pandas.Series.str.contains()方法是pandas库中Series对象的一个字符串成员方法,用于判断一个字符串是否包含在Series对象的每个元素中,返回一个布尔型Series对象。
使用方法:
Series.str.contains(self: ~FrameOrSeries, pat, case=True, flags=0, na=None, regex=True) -> ~FrameOrSeries
参数说明:
- pat: 匹配的字符串或正则表达式。
- case: 是否大小写敏感。默认为True。
- flags: 可选参数,用于控制正则表达式的匹配模式。
- na: 未知值的表示形式。默认为None。
- regex: 是否将pat作为正则表达式,默认为True。
实例1
假设我们有一个Series对象data,其中存储了nba球星的名字,我们想判断其中是否有姚明这个球星是否在其中,代码如下:
import pandas as pd
data = pd.Series(['Kobe Bryant', 'LeBron James', 'Kevin Garnett', 'Yao Ming', 'Stephen Curry'])
result = data.str.contains('Yao Ming')
print(result)
输出结果:
0 False
1 False
2 False
3 True
4 False
dtype: bool
可以看到,我们得到了一个布尔型的Series对象,其中第4个元素为True,说明Series中包含有姚明这个球星。
实例2
假设我们有一个Series对象words,其中存储了一些句子,我们想判断其中是否包含单词"hello",代码如下:
import pandas as pd
words = pd.Series(['Hello, how are you?', 'Goodbye', 'Say hello to my little friend'])
result = words.str.contains('hello')
print(result)
输出结果:
0 True
1 False
2 True
dtype: bool
可以看到,我们得到了一个布尔型的Series对象,其中前两个元素为False,第三个元素为True,说明Series中包含有"hello"这个单词。由于默认情况下字符串匹配是大小写敏感的,因此第一个元素中的"Hello"并没有被匹配。如果我们希望匹配不区分大小写,则需要将参数case设置为False。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解pandas.Series.str.contains()(检测序列中的字符串包含)函数使用方法 - Python技术站