Метод count
Метод count аксессора str применяется к Series
и возвращает Series, содержащий количество неперекрывающихся
вхождений подстроки или шаблона регулярного выражения в каждой
строке. Первым параметром метод принимает подстроку или паттерн
для поиска. Вторым параметром можно передать флаг re.IGNORECASE
для регистронезависимого поиска.
Синтаксис
Series.str.count(pat[, flags])
Пример
Давайте создадим Series со строками и подсчитаем количество
вхождений буквы a в каждой строке:
import pandas as pd
ser = pd.Series(['abcde', 'article', 'data', 'aaaaa'])
res = ser.str.count('a')
print(res)
Результат выполнения кода:
0 1
1 1
2 2
3 5
dtype: int64
Пример
Подсчитаем количество вхождений буквы e в строках с учётом
регистра и без него с помощью флага re.IGNORECASE:
import pandas as pd
import re
ser = pd.Series(['Apple', 'banana', 'Cherry', 'grape'])
res = ser.str.count('e', flags=re.IGNORECASE)
print(res)
Результат выполнения кода:
0 1
1 0
2 1
3 1
dtype: int64
Пример
Метод count поддерживает регулярные выражения. Найдём
количество цифр в каждой строке:
import pandas as pd
ser = pd.Series(['abc123', '42', 'hello', '1a2b3c'])
res = ser.str.count(r'\d')
print(res)
Результат выполнения кода:
0 3
1 2
2 0
3 3
dtype: int64
Пример
Подсчитаем количество слов, разделённых пробелом, в каждой строке с помощью регулярного выражения:
import pandas as pd
ser = pd.Series(['hello world', 'one two three', 'test'])
res = ser.str.count(r'\w+')
print(res)
Результат выполнения кода:
0 2
1 3
2 1
dtype: int64