Панды: где два условия? 🐼🔎

Используйте функцию pandas.DataFrame.where() для выполнения фильтрации по двум условиям.


import pandas as pd

# Создание исходного DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'Dave'],
        'Age': [25, 30, 35, 40],
        'Height': [160, 175, 180, 165],
        'Weight': [60, 70, 80, 90]}

df = pd.DataFrame(data)

# Фильтрация по двум условиям
filtered_df = df.where((df['Age'] > 30) & (df['Height'] < 180))

print(filtered_df)
    

В этом примере мы используем функцию where(), чтобы отфильтровать DataFrame по двум условиям: возраст больше 30 и рост меньше 180.

Результат будет содержать только те строки, которые удовлетворяют обоим условиям.

Метод where() заменяет значения, не соответствующие условию, на NaN.

Детальный ответ

Использование pandas where с двумя условиями

Привет, студент! В этой статье мы разберём, как использовать метод pandas where с двумя условиями.

Метод pandas where является мощным инструментом для фильтрации данных в DataFrame на основе заданных условий. Он позволяет нам создавать новый DataFrame, содержащий только те строки и столбцы, для которых выполняются определённые условия.

Чтобы использовать pandas where с двумя условиями, нам нужно составить комбинированное условие, которое будет проверять оба условия одновременно. Для этого мы можем использовать логические операторы & (и) или | (или).

Пример кода:


import pandas as pd

# Создаем пример DataFrame
data = {'Name': ['John', 'Jane', 'Mike', 'Emily'],
        'Age': [25, 30, 35, 40],
        'Score': [90, 85, 95, 80]}

df = pd.DataFrame(data)

# Используем pandas where с двумя условиями
filtered_df = df.where((df['Age'] > 30) & (df['Score'] >= 90))

print(filtered_df)
    

В этом примере мы создаем DataFrame с именами, возрастами и баллами. Затем мы используем pandas where для фильтрации данных по двум условиям: возраст больше 30 и баллы равны или выше 90. Результатом будет новый DataFrame filtered_df, содержащий только строки, для которых выполняются оба условия.

Обратите внимание на использование фигурных скобок вокруг каждого условия и операторов & и |, чтобы объединить два условия.

Также стоит отметить, что в pandas where значение будет заменено на NaN (Not a Number), если условие не выполняется. Это позволяет нам сохранять структуру DataFrame и избегать удаления строк или столбцов при фильтрации данных.

Вывод:

Метод pandas where с двумя условиями является мощным инструментом для фильтрации данных в DataFrame. Он позволяет нам создавать новый DataFrame, содержащий только те строки и столбцы, для которых выполняются объединенные условия. Используйте логические операторы & и | для соединения двух условий в комбинированное условие.

Удачи в использовании pandas where с двумя условиями в ваших проектах!

Видео по теме

Python | Урок 16: Библиотека Pandas, часть 2

Фильтрация данных в Pandas | Анатолий Карпов | karpov.courses

Основы Pandas Python | Series, DataFrame И Анализ Данных

Похожие статьи:

Панды: где два условия? 🐼🔎