📜  Python| Pandas Series.str.count()(1)

📅  最后修改于: 2023-12-03 14:46:22.984000             🧑  作者: Mango

Pandas Series.str.count()

Pandas Series.str.count() 是 Pandas 库中用于计算字符串中指定子字符串出现次数的函数。

语法格式
Series.str.count(sub, start=0, end=None)
  • sub:需要计数的子字符串,可以是一个字符串或正则表达式。
  • start:可选参数,指定开始计数的位置。
  • end:可选参数,指定结束计数的位置。
示例
import pandas as pd

data = {"pets": ["dog, cat, cat", "cat, cat, bird, fish", "dog, rabbit"]}
df = pd.DataFrame(data)

# 计算每个单元格中 "cat" 的出现次数
df["count"] = df["pets"].str.count("cat")

print(df)

输出结果:

                     pets  count
0           dog, cat, cat      2
1    cat, cat, bird, fish      2
2              dog, rabbit      0
支持正则表达式

Series.str.count() 还支持使用正则表达式进行计数。在上面的示例中,我们计算了字符串中子字符串 "cat" 的出现次数。如果我们想计算 "c" 和 "t" 之间的所有字符(不包括 "c" 和 "t"),可以使用正则表达式:

df["count"] = df["pets"].str.count("c[^ct]*t")

其中 [^ct]* 表示匹配除 "c" 和 "t" 以外的所有字符, * 表示匹配零个或多个。

总结

Pandas Series.str.count() 函数是一个非常实用的函数,在需要计算字符串中子字符串出现次数时非常有用。还支持正则表达式,可以提高计算的灵活性和准确性。