Метод startswith
Метод startswith применяется к Series
через аксессор str и возвращает булев массив,
указывающий, начинается ли каждая строка с указанной
подстроки. Первым параметром передаётся искомая подстрока
или кортеж подстрок. Дополнительные параметры na и
regex управляют обработкой пропущенных значений
и использованием регулярных выражений.
Синтаксис
ser.str.startswith(pat[, na=None, regex=False])
Пример
Проверим, какие строки начинаются с подстроки 'ab':
import pandas as pd
ser = pd.Series(['abcde', 'article', 'abalone', 'data'])
res = ser.str.startswith('ab')
print(res)
Результат выполнения кода:
0 True
1 False
2 True
3 False
dtype: bool
Пример
Проверим начало строк с помощью кортежа подстрок:
import pandas as pd
ser = pd.Series(['abcde', 'article', 'user', 'data'])
res = ser.str.startswith(('art', 'use'))
print(res)
Результат выполнения кода:
0 False
1 True
2 True
3 False
dtype: bool
Пример
Обработка пропущенных значений с помощью параметра na:
import pandas as pd
ser = pd.Series(['abcde', None, 'article', 'ab'])
res = ser.str.startswith('ab', na=False)
print(res)
Результат выполнения кода:
0 True
1 False
2 False
3 True
dtype: bool
Пример
Использование регулярных выражений для проверки начала строк:
import pandas as pd
ser = pd.Series(['123abc', 'abc123', '123', 'abc'])
res = ser.str.startswith('^[0-9]', regex=True)
print(res)
Результат выполнения кода:
0 True
1 False
2 True
3 False
dtype: bool
Пример
Фильтрация строк с помощью startswith:
import pandas as pd
ser = pd.Series(['apple', 'banana', 'apricot', 'grape'])
res = ser[ser.str.startswith('ap')]
print(res)
Результат выполнения кода:
0 apple
2 apricot
dtype: object