Pandas: как фильтровать строки, содержащие определенную строку
Вы можете использовать следующий синтаксис для фильтрации строк, содержащих определенную строку в DataFrame pandas:
df[df[" col "]. str . contains (“ this string ”)]
В этом руководстве объясняется несколько примеров практического использования этого синтаксиса со следующим DataFrame:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'C'], ' conference ': ['East', 'East', 'East', 'West', 'West', 'East'], ' points ': [11, 8, 10, 6, 6, 5]}) #view DataFrame df team conference points 0 A East 11 1 A East 8 2 A East 10 3 B West 6 4 B West 6 5 C East 5
Пример 1. Фильтрация строк, содержащих определенную строку
Следующий код показывает, как фильтровать строки в DataFrame, содержащие букву «A» в столбце команды:
df[df[" team "]. str . contains (“ A ”)] team conference points 0 A East 11 1 A East 8 2 A East 10
Сохраняются только строки, столбец команды которых содержит букву «А».
Пример 2. Фильтрация строк, содержащих строку в списке
Следующий код показывает, как фильтровать строки в DataFrame, содержащие «A» или «B» в столбце команды:
df[df[" team "]. str . contains (“ A|B ”)] team conference points 0 A East 11 1 A East 8 2 A East 10 3 B West 6 4 B West 6
Сохраняются только строки, столбец команды которых содержит «A» или «B».
Пример 3. Фильтрация строк, содержащих неполную строку
В предыдущих примерах мы выполняли фильтрацию на основе строк, которые точно соответствуют одной или нескольким строкам.
Однако, если мы хотим отфильтровать строки, содержащие неполную строку, мы можем использовать следующий синтаксис:
#identify partial string to look for keep=[" Wes "] #filter for rows that contain the partial string "Wes" in the conference column df[df. conference . str . contains (' | ' .join (keep))] team conference points 3 B West 6 4 B West 6
Сохраняются только строки, в которых столбец конференции содержит «Wes».
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:
Как удалить строки в Pandas DataFrame в зависимости от условия
Как фильтровать DataFrame Pandas по нескольким условиям
Как использовать фильтр «НЕ В» в Pandas DataFrame