Часто при работе с данными в Python с помощью библиотеки Pandas возникают ситуации, когда в определенном столбце присутствуют пропущенные значения (NaN). Во многих случаях, для анализа данных удобнее работать только с полными данными, то есть удалять те строки, в которых есть пропущенные значения.
Пример ситуации: имеется DataFrame с информацией о компаниях и их доходах. Однако, в некоторых строках данные о доходах отсутствуют и отображаются как NaN.
import pandas as pd import numpy as np data = {'Компания': ['ООО "Рога и Копыта"', 'АО "Красная шапка"', 'ООО "Зайцы и морковка"', 'АО "Белые медведи"'], 'Доход': [500000, np.nan, 300000, np.nan]} df = pd.DataFrame(data)
В результате получается следующий DataFrame:
| | Компания | Доход |
|—:|:———————|———:|
| 0 | ООО «Рога и Копыта» | 500000 |
| 1 | АО «Красная шапка» | NaN |
| 2 | ООО «Зайцы и морковка» | 300000 |
| 3 | АО «Белые медведи» | NaN |
Для удаления строк с пропущенными значениями в столбце ‘Доход’ можно воспользоваться методом dropna
:
df = df.dropna(subset=['Доход'])
В результате получим DataFrame без строк, в которых в столбце ‘Доход’ были пропущенные значения:
| | Компания | Доход |
|—:|:———————|———:|
| 0 | ООО «Рога и Копыта» | 500000 |
| 2 | ООО «Зайцы и морковка» | 300000 |
Таким образом, с помощью метода dropna
можно легко и быстро удалить из DataFrame строки с пропущенными значениями в определенном столбце.
Добавить комментарий