🐼 Python: Как удалить строки по условию в Pandas?

Чтобы удалить строки по условию в Pandas Python, вы можете использовать метод drop.

Вот пример использования:

import pandas as pd

# Создаем DataFrame
data = {'Имя': ['Алексей', 'Екатерина', 'Иван', 'Ольга'],
        'Возраст': [25, 32, 28, 31],
        'Город': ['Москва', 'Санкт-Петербург', 'Москва', 'Санкт-Петербург']}

df = pd.DataFrame(data)

# Удаляем строки, где город равен 'Москва'
df = df.drop(df[df['Город'] == 'Москва'].index)

print(df)

В этом примере кода мы создаем DataFrame с данными, затем используем метод drop и фильтруем строки, где значение столбца 'Город' равно 'Москва'. Полученный DataFrame будет содержать только строки, где город не является 'Москва'.

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

Как удалить строки по условию в pandas python

Pandas - это библиотека Python для обработки и анализа данных. Она предоставляет мощные инструменты для работы с табличными данными, включая возможность удаления строк по условию. В этой статье мы рассмотрим, как удалить строки, удовлетворяющие определенному условию, используя библиотеку pandas.

Шаг 1: Подготовка данных

Прежде чем мы начнем, нам нужно импортировать библиотеку pandas и создать DataFrame - структуру данных, предназначенную для работы с табличными данными. Давайте создадим пример DataFrame:

import pandas as pd

data = {'Name': ['John', 'Emma', 'Peter', 'Lisa'],
        'Age': [25, 28, 30, 24],
        'City': ['New York', 'London', 'Paris', 'Sydney']}

df = pd.DataFrame(data)

print(df)

Этот код создает DataFrame с именами, возрастами и городами людей. Вы можете видеть результат на экране:

   Name  Age       City
0  John   25   New York
1  Emma   28     London
2 Peter   30      Paris
3  Lisa   24     Sydney

Шаг 2: Удаление строк по условию

Теперь давайте рассмотрим, как удалить строки, удовлетворяющие определенному условию. В pandas мы можем использовать метод drop() для этой цели. Метод drop() принимает в качестве аргумента индекс или список индексов строк, которые нужно удалить.

Например, допустим, мы хотим удалить строки с людьми, возраст которых меньше 30. Мы можем сделать это следующим образом:

df_filtered = df.drop(df[df['Age'] < 30].index)

print(df_filtered)

Результатом будет новый DataFrame, в котором будут только строки с людьми, возраст которых больше или равен 30:

   Name  Age     City
2 Peter   30    Paris

Вы также можете использовать операторы сравнения, такие как >, <=, и т.д., чтобы определить условие удаления строк.

Если вы хотите удалить строки, удовлетворяющие нескольким условиям, вы можете объединить их с помощью операторов & (и) или | (или).

Примеры:

Удалить строки с людьми, возраст которых больше 25 и город которых не "London":

df_filtered = df.drop(df[(df['Age'] > 25) & (df['City'] != 'London')].index)

print(df_filtered)

Результат:

   Name  Age    City
1  Emma   28  London
2 Peter   30   Paris
3  Lisa   24  Sydney

Заключение

В этой статье мы рассмотрели, как удалить строки по условию в библиотеке pandas python. Мы использовали метод drop() для удаления строк, удовлетворяющих определенному условию. Вы также узнали, как использовать операторы сравнения для определения условий удаления строк.

Надеюсь, эта статья была полезной для вас. Спасибо за чтение!

Видео по теме

Датафреймы pandas. Удаление строк

Pandas Базовый №4. Операции со столбцами DataFrame

Удаление элементов списка по условию. Решение задачи на Python

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

🐼 Python: Как удалить строки по условию в Pandas?