Как удалить строки с nan в pandas?

Пользователь

от deion , в категории: Python , месяц назад

Как удалить строки с nan в pandas?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от eryn.rodriguez , месяц назад

@deion 

Вы можете использовать метод DataFrame.dropna() для удаления строк с значением NaN (Not a Number) в датафрейме pandas. Например:

1
2
3
4
5
6
7
8
9
import pandas as pd

# создаем датафрейм с некоторыми значениями NaN
df = pd.DataFrame({'A': [1, 2, 3, 4, 5], 'B': [6, 7, 8, 9, float('nan')]})

# удаляем строки с значением NaN
df = df.dropna()

print(df)


Вывод:

1
2
3
4
5
   A    B
0  1  6.0
1  2  7.0
2  3  8.0
3  4  9.0


Обратите внимание, что метод dropna() удалит строки с любыми пропущенными значениями, а не только со значением NaN. Чтобы удалить только строки с значением NaN, вы можете указать параметр how='all', что означает, что строка должна быть удалена только в том случае, если все ее значения равны NaN:

1
df = df.dropna(how='all')


Вы также можете использовать метод DataFrame.drop() с параметром subset, чтобы указать список колонок, в которых нужно искать значен