Фильтрация данных — обычная операция при работе с большими наборами данных в pandas. Оператор «in» обеспечивает удобный способ фильтрации данных на основе набора значений. В этой статье мы рассмотрим различные методы фильтрации данных с использованием оператора «in» в pandas, а также приведем примеры кода для каждого метода.
Метод 1: использование оператора «in» с методом Series.isin()
Метод isin()в pandas позволяет нам фильтровать серию на основе того, присутствуют ли ее значения в данный набор. Вот пример:
import pandas as pd
# Create a DataFrame
data = {'Name': ['John', 'Alice', 'Bob', 'Charlie', 'Eve'],
'Age': [25, 30, 35, 40, 45]}
df = pd.DataFrame(data)
# Filter rows where 'Name' is either 'Alice' or 'Bob'
filtered_df = df[df['Name'].isin(['Alice', 'Bob'])]
print(filtered_df)
Выход:
Name Age
1 Alice 30
2 Bob 35
Метод 2: использование оператора «in» с методом DataFrame.query()
Метод query()в pandas позволяет нам фильтровать строки на основе заданных условий, включая использование оператор «в». Вот пример:
import pandas as pd
# Create a DataFrame
data = {'Name': ['John', 'Alice', 'Bob', 'Charlie', 'Eve'],
'Age': [25, 30, 35, 40, 45]}
df = pd.DataFrame(data)
# Filter rows where 'Name' is either 'Alice' or 'Bob'
filtered_df = df.query("Name in ['Alice', 'Bob']")
print(filtered_df)
Выход:
Name Age
1 Alice 30
2 Bob 35
Метод 3: использование оператора «in» с методом DataFrame.isin()
Метод isin()также можно применять непосредственно к DataFrame, что позволяет нам фильтровать строки на основе нескольких столбцы. Вот пример:
import pandas as pd
# Create a DataFrame
data = {'Name': ['John', 'Alice', 'Bob', 'Charlie', 'Eve'],
'Age': [25, 30, 35, 40, 45],
'City': ['New York', 'London', 'Paris', 'Tokyo', 'Sydney']}
df = pd.DataFrame(data)
# Filter rows where 'Name' is either 'Alice' or 'Bob' and 'City' is either 'London' or 'Paris'
filtered_df = df[df.isin({'Name': ['Alice', 'Bob'], 'City': ['London', 'Paris']}).any(1)]
print(filtered_df)
Выход:
Name Age City
1 Alice 30.0 London
2 Bob 35.0 Paris
В этой статье мы рассмотрели различные методы фильтрации данных с использованием оператора «in» в pandas. Используя метод isin()с объектами Series и DataFrame, а также используя метод query(), мы можем легко фильтровать данные на основе определенных значений или условий. Эти методы обеспечивают гибкость и эффективность при работе с большими наборами данных в Pandas, позволяя легко манипулировать и анализировать данные.
Не забывайте использовать эти методы в соответствии с вашими конкретными требованиями и структурами данных для достижения оптимальных результатов в ваших проектах.