Pandas: як вибрати рядки на основі значень стовпців
Ви можете використовувати будь-який із наведених нижче методів для вибору рядків у pandas DataFrame на основі значень стовпців:
Спосіб 1: виберіть рядки, у яких стовпець дорівнює певному значенню
df. loc [df[' col1 '] == value]
Спосіб 2: виберіть у списку значень рядки, у яких міститься значення стовпця
df. loc [df[' col1 ']. isin ([value1, value2, value3, ...])]
Спосіб 3: Виберіть рядки на основі умов кількох стовпців
df. loc [(df[' col1 '] == value) & (df[' col2 '] < value)]
У наступному прикладі показано, як використовувати кожен метод із такими pandas DataFrame:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'],
' points ': [5, 7, 7, 9, 12, 9, 9, 4],
' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12],
' blocks ': [4, 7, 7, 6, 5, 8, 9, 10]})
#view DataFrame
df
team points rebound blocks
0 A 5 11 4
1 To 7 8 7
2 B 7 10 7
3 B 9 6 6
4 B 12 6 5
5 C 9 5 8
6 C 9 9 9
7 C 4 12 10
Спосіб 1: виберіть рядки, у яких стовпець дорівнює певному значенню
Наступний код показує, як вибрати кожен рядок DataFrame, де стовпець «points» дорівнює 7:
#select rows where 'points' column is equal to 7
df. loc [df[' points '] == 7]
team points rebound blocks
1 To 7 8 7
2 B 7 10 7
Спосіб 2: виберіть у списку значень рядки, у яких міститься значення стовпця
Наступний код показує, як вибрати кожен рядок DataFrame, де стовпець «points» дорівнює 7, 9 або 12:
#select rows where 'points' column is equal to 7
df. loc [df[' points ']. isin ([7, 9, 12])]
team points rebound blocks
1 To 7 8 7
2 B 7 10 7
3 B 9 6 6
4 B 12 6 5
5 C 9 5 8
6 C 9 9 9
Спосіб 3: Виберіть рядки на основі умов кількох стовпців
У наведеному нижче коді показано, як вибрати кожен рядок DataFrame, де стовпець «команда» дорівнює «B», а стовпець «бали» більше 8:
#select rows where 'team' is equal to 'B' and points is greater than 8
df. loc [(df[' team '] == ' B ') & (df[' points '] > 8)]
team points rebound blocks
3 B 9 6 6
4 B 12 6 5
Зауважте, що повертаються лише два рядки, де команда дорівнює «B» і «очки» перевищують 8.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в pandas:
Як вибирати рядки за індексом у Pandas
Як вибрати окремі рядки в Pandas
Як вибрати рядки, де значення з’являється в будь-якому стовпці в Pandas