Автор оригинала: Python Examples.
Pandas DataFrame – Ряды фильтра
Чтобы фильтровать строки PandaS DataFrame, вы можете использовать функцию dataframe.isin (). ISIN () Возвращает DataFrame Boolean, которое при использовании с оригинальным DataFrame, фильтры строки, которые подчиняются критериям фильтра.
Вы также можете использовать dataframe.query (), чтобы отфильтровать строки, которые удовлетворяют заданному булевому выражению.
В этом уроке мы узнаем, как фильтровать строки DataFrame на основе условий, применяемого на значениях столбца.
Пример 1: Filter DataFrame Rows – DataFrame.isin ()
В этом примере мы сделаем dataframe с двумя столбцами, именами А и B и четыре ряда. Мы будем отфильтровать это датафарам, основанное на условиях, что значения столбца А лежит в данном диапазоне.
Python Program
import pandas as pd
#initialize dataframe
df = pd.DataFrame({'a': [2, 4, 8, 5], 'b': [2, 0, 9, 7]})
#check if the values of df['a'] are in the range(3,6)
out = df['a'].isin(range(3,6))
#filter dataframe
filtered_df = df[out]
print('Original DataFrame\n-------------------\n',df)
print('\nFiltered DataFrame\n-------------------\n',filtered_df)ISIN () Функция возвращает true для строк, столбец которых А Значения находятся в диапазоне (3,6). Еще функция возвращает false.
DF [OUT] возвращает только те строки, значение которой верно, что приводит к тому, что в результате фильтрованного выхода.
Выход
Original DataFrame
-------------------
a b
0 2 2
1 4 0
2 8 9
3 5 7
Filtered DataFrame
-------------------
a b
1 4 0
3 5 7Пример 2: Флампировать Filter DataFrame Frames – DataFrame.Query ()
В этом примере мы будем инициализировать dataframe с двумя столбцами А и B , содержащий четыре ряда. Мы фильтруем эти строки, чья колонна B Значение больше 4.
Мы будем использовать dataframe.query (), чтобы фильтровать строки dataframe.
Python Program
import pandas as pd
#initialize dataframe
df = pd.DataFrame({'a': [1, 4, 7, 2], 'b': [2, 0, 8, 7]})
#get rows where that b>4
filtered_df = df.query('b>4')
print('Original DataFrame\n-------------------\n',df)
print('\nFiltered DataFrame\n-------------------\n',filtered_df)Выход
Original DataFrame
-------------------
a b
0 1 2
1 4 0
2 7 8
3 2 7
Filtered DataFrame
-------------------
a b
2 7 8
3 2 7Резюме
В этом руководстве примеров Python мы узнали, как фильтровать DataFrame, основываясь на условиях, применяемых на значениях его столбцов.