Как выбрать строки без значений nan в pandas


Вы можете использовать следующие методы для выбора строк без значений NaN в pandas:

Способ 1: выберите строки без значений NaN во всех столбцах

 df[~df. isnull (). any (axis= 1 )]

Способ 2: выберите строки без значений NaN в определенном столбце

 df[~df[' this_column ']. isna ()]

В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G'],
                   ' points ': [np.nan, 12, 15, 25, np.nan, 22, 30],
                   ' assists ': [4, np.nan, 5, 9, 12, 14, 10]})

#view DataFrame
print (df)

  team points assists
0 A NaN 4.0
1 B 12.0 NaN
2C 15.0 5.0
3D 25.0 9.0
4 E NaN 12.0
5F 22.0 14.0
6G 30.0 10.0

Пример 1. Выбор строк без значений NaN во всех столбцах

Мы можем использовать следующий синтаксис для выбора строк без значений NaN в каждом столбце DataFrame:

 #create new DataFrame that only contains rows without NaNs
no_nans = df[~df. isnull (). any (axis= 1 )]

#view results
print (no_nans)

  team points assists
2C 15.0 5.0
3D 25.0 9.0
5F 22.0 14.0
6G 30.0 10.0   

Обратите внимание, что каждая строка результирующего DataFrame не содержит значений NaN ни в одном столбце.

Пример 2. Выбор строк без значений NaN в определенном столбце

Мы можем использовать следующий синтаксис для выбора строк без значений NaN в столбце точек DataFrame:

 #create new DataFrame that only contains rows without NaNs in points column
no_points_nans = df[~df[' points ']. isna ()]

#view results
print (no_points_nans)

  team points assists
1 B 12.0 NaN
2C 15.0 5.0
3D 25.0 9.0
5F 22.0 14.0
6G 30.0 10.0

Обратите внимание, что каждая строка результирующего DataFrame не содержит значений NaN в столбце точек .

В столбце «Помощь» есть строка со значением NaN, но она сохраняется в DataFrame, поскольку значение в столбце «Точки» этой строки не равно NaN.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:

Pandas: как удалить строки со значениями NaN
Pandas: как заменить значения NaN строкой
Pandas: как заполнить значения NaN средним значением

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *