Pandas: как использовать like в запросе()


Вы можете использовать следующие методы для использования LIKE (аналогично SQL) в функции pandas query() для поиска строк, содержащих определенный шаблон:

Метод 1: найти строки, содержащие шаблон

 df. query (' my_column.str.contains("pattern1") ')

Метод 2: найти строки, содержащие один из нескольких шаблонов

 df. query (' my_column.str.contains("pattern1|pattern2") ')

В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Cavs', 'Heat', 'Mavs', 'Mavs', 'Nets',
                            'Heat', 'Cavs', 'Jazz', 'Jazz', 'Hawks'],
                   ' points ': [3, 3, 4, 5, 4, 7, 8, 7, 12, 14],
                   ' rebounds ': [15, 14, 14, 10, 8, 14, 13, 9, 5, 4]})

#view DataFrame
print (df)

    team points rebounds
0 Cavs 3 15
1 Heat 3 14
2 Mavs 4 14
3 Mavs 5 10
4 Nets 4 8
5 Heat 7 14
6 Cavs 8 13
7 Jazz 7 9
8 Jazz 12 5
9 Hawks 14 4

Пример 1. Найдите строки, содержащие шаблон

В следующем коде показано, как использовать функцию query() для поиска всех строк в DataFrame, содержащих «avs» в столбце команды :

 df. query (' team.str.contains("avs") ')

        team points rebounds
0 Cavs 3 15
2 Mavs 4 14
3 Mavs 5 10
6 Cavs 8 13

Каждая возвращаемая строка содержит «avs» где-то в столбце команды .

Также обратите внимание, что этот синтаксис чувствителен к регистру.

Таким образом, если бы мы вместо этого использовали «AVS», мы не получили бы никаких результатов, поскольку в столбце команды нет строк с заглавными буквами «AVS».

Пример 2. Найдите строки, содержащие один из нескольких шаблонов

В следующем коде показано, как использовать функцию query() для поиска всех строк в DataFrame, содержащих «avs» или «eat» в столбце команды :

 df. query (' team.str.contains("avs|eat") ')

        team points rebounds
0 Cavs 3 15
1 Heat 3 14
2 Mavs 4 14
3 Mavs 5 10
5 Heat 7 14
6 Cavs 8 13

Каждая возвращаемая строка содержит либо «avs», либо «eat» где-то в столбце команды .

Примечание : | Оператор означает «или» в пандах. Не стесняйтесь использовать столько, сколько хотите, для поиска еще большего количества дизайнов каналов.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:

Pandas: как фильтровать строки по длине строки
Pandas: как удалить строки по условию
Панды: как использовать фильтр «НЕТ ВХОДА»

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *