Вы можете использовать символ & в качестве оператора «И» в pandas.
Например, вы можете использовать следующий базовый синтаксис для фильтрации строк в кадре данных pandas, которые удовлетворяют условию 1 и условию 2:
df[(condition1) & (condition2)]
В следующих примерах показано, как использовать этот оператор «И» в различных сценариях.
Пример 1: Используйте оператор «И» для фильтрации строк на основе числовых значений в Pandas
Предположим, у нас есть следующие Pandas DataFrame:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'team': ['A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'],
'points': [25, 12, 15, 14, 19, 23, 25, 29],
'assists': [5, 7, 7, 9, 12, 9, 9, 4],
'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})
#view DataFrame
print(df)
team points assists rebounds
0 A 25 5 11
1 A 12 7 8
2 B 15 7 10
3 B 14 9 6
4 B 19 12 6
5 B 23 9 5
6 C 25 9 9
7 C 29 4 12
Мы можем использовать следующий синтаксис для фильтрации строк в DataFrame, где значение в столбце точек больше 20, а значение в столбце помощи равно 9:
#filter rows where points > 20 and assists = 9
df[(df.points > 20) & (df.assists == 9)]
team points assists rebounds
5 B 23 9 5
6 C 25 9 9
Возвращаются только строки, в которых значение очков больше 20, а значение помощи равно 9.
Пример 2: Используйте оператор «И» для фильтрации строк на основе строковых значений в Pandas
Предположим, у нас есть следующие Pandas DataFrame:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'team': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
'position': ['G', 'G', 'F', 'F', 'C', 'F', 'C', 'C'],
'conference': ['W', 'W', 'W', 'W', 'E', 'E', 'E', 'E'],
'points': [11, 8, 10, 6, 6, 5, 9, 12]})
#view DataFrame
print(df)
team position conference points
0 A G W 11
1 B G W 8
2 C F W 10
3 D F W 6
4 E C E 6
5 F F E 5
6 G C E 9
7 H C E 12
Мы можем использовать следующий синтаксис для фильтрации строк в DataFrame, где значение в столбце позиции равно G, а значение в столбце конференции равно W:
#filter rows based on string values
df[(df.position == 'G') & (df.conference == 'W') ]
team position conference points
0 A G W 11
1 B G W 8
Возвращаются только строки, в которых столбец position равен G, а столбец конференции равен W.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:
Как использовать оператор «ИЛИ» в pandas
Как фильтровать строки Pandas DataFrame по дате
Как отфильтровать фрейм данных Pandas по значениям столбцов