Spec-Zone.ru › pandas 0.25

pandas.Series.str.contains

Series.str.contains(self, pat, case=True, flags=0, na=nan, regex=True) [source]

Проверка, содержится ли шаблон или регулярное выражение в строке Series или Index.

Возвращает булеву Series или Index, в зависимости от того, содержится ли заданный шаблон или регулярное выражение в строке Series или Index.

Параметры:
pat : str

Последовательность символов или регулярное выражение.

case : bool, default True

Если True, регистрозависимый поиск.

flags : int, default 0 (no flags)

Флаги для передачи модулю re, например, re.IGNORECASE.

na : default NaN

Значение заполнения для пропущенных значений.

regex : bool, default True

Если True, предполагается, что pat — регулярное выражение.

Если False, pat обрабатывается как литеральная строка.

Возвращает:
Series или Index булевых значений

Series или Index булевых значений, указывающих, содержится ли заданный шаблон в строке каждого элемента Series или Index.

См. также

match
Аналогично, но строже, опираясь на re.match вместо re.search.
Series.str.startswith
Проверка, соответствует ли начало каждой строки шаблону.
Series.str.endswith
То же, что и startswith, но проверяет конец строки.

Примеры

Возвращение Series булевых значений, используя только литеральный шаблон.

>>> s1 = pd.Series(['Mouse', 'dog', 'house and parrot', '23', np.NaN])
>>> s1.str.contains('og', regex=False)
0    False
1     True
2    False
3    False
4      NaN
dtype: object

Возвращение Index булевых значений, используя только литеральный шаблон.

>>> ind = pd.Index(['Mouse', 'dog', 'house and parrot', '23.0', np.NaN])
>>> ind.str.contains('23', regex=False)
Index([False, False, False, True, nan], dtype='object')

Указание регистрозависимости с помощью case.

>>> s1.str.contains('oG', case=True, regex=True)
0    False
1    False
2    False
3    False
4      NaN
dtype: object

Указание na в качестве False вместо NaN заменяет значения NaN на False. Если Series или Index не содержат значений NaN, результирующий тип данных будет bool, в противном случае — object.

>>> s1.str.contains('og', na=False, regex=True)
0    False
1     True
2    False
3    False
4    False
dtype: bool

Возвращение «дом» или «собака», когда появляется любое из выражений в строке.

>>> s1.str.contains('house|dog', regex=True)
0    False
1     True
2     True
3    False
4      NaN
dtype: object

Игнорирование регистрозависимости с помощью flags с регулярным выражением.

>>> import re
>>> s1.str.contains('PARROT', flags=re.IGNORECASE, regex=True)
0    False
1    False
2     True
3    False
4      NaN
dtype: object

Возвращение любой цифры с помощью регулярного выражения.

>>> s1.str.contains('\d', regex=True)
0    False
1    False
2    False
3     True
4      NaN
dtype: object

Убедитесь, что pat не является литеральным шаблоном, когда regex установлено в True. Обратите внимание в следующем примере, что можно ожидать, что только s2[1] и s2[3] вернут True. Однако «.0» как регулярное выражение соответствует любому символу, за которым следует 0.

>>> s2 = pd.Series(['40', '40.0', '41', '41.0', '35'])
>>> s2.str.contains('.0', regex=True)
0     True
1     True
2    False
3     True
4    False
dtype: bool

© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.25.0/reference/api/pandas.Series.str.contains.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API