Python Pandas Series.str.count()
Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python软件包的奇妙生态系统。Pandas就是这些包中的一个,它使导入和分析数据变得更加容易。
Pandas str.count()方法是用来计算一个系列中的每一个字符串或regex模式的出现次数。额外的标志参数也可以被传递给处理,以修改regex的某些方面,如大小写敏感性,多行匹配等。
由于这是一个pandas字符串方法,它只适用于字符串系列,而且每次在调用这个方法之前,都必须把.str作为前缀。否则,它将会产生一个错误。
语法: Series.str.count(pat, flags=0)
参数:
pat:要在串联的字符串中搜索的字符串或反义词
flags: 可以传递的Regex标志(A, S, L, M, I, X),默认为0,表示无。为此,还必须导入雷格斯模块(re)。
返回类型: 系列,包括每个字符串中出现的字符的数量。
在下面的例子中,所使用的数据框包含一些NBA球员的数据。下面是数据框在任何操作之前的图像。
例子1:计算单词出现的次数
在这个例子中,Pandas系列由一个列表组成,使用str.count()方法对gfg的出现进行计数。
# importing pandas package
import pandas as pd
# making list
list =["GeeksforGeeks", "Geeksforgeeks", "geeksforgeeks",
"geeksforgeeks is a great platform", "for tech geeks"]
# making series
series = pd.Series(list)
# counting occurrence of geeks
count = series.str.count("geeks")
# display
count
输出:
如输出图片所示,显示了每个字符串中出现的Geeks,由于第一个大写字母,Geeks没有被计算在内。
例子2:使用标志
在这个例子中,”a “的出现被计算在Name列中。还使用了标志参数,re.I被传递给它,这意味着IGNORECASE。因此,a和A在计数时都会被考虑。
# importing pandas module
import pandas as pd
# importing module for regex
import re
# reading csv file from url
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv")
# String to be searched in start of string
search ="a"
# count of occurrence of a and creating new column
data["count"]= data["Name"].str.count(search, re.I)
# display
data
输出:
如输出图像所示,通过观察第一个索引本身,可以清楚地进行比较,Avery Bradely中a的计数是2,这意味着大写和小写都被考虑在内。