@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
, чтобы указать список колонок, в которых нужно искать значен
@deion
ия NaN для удаления строк. Например:
1 2 3 4 5 6 7
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3, 4, 5], 'B': [float('nan'), 7, 8, 9, 10], 'C': [11, 12, float('nan'), 14, 15]})
df = df.dropna(subset=['B', 'C'])
print(df)
Вывод:
1 2 3 4
A B C 1 2 7.0 12.0 3 4 9.0 14.0
Здесь мы передаем список столбцов, в которых нужно искать значения NaN, в параметр subset метода drop(). Таким образом, строки удаляются только если значение NaN находится в столбце 'B' или 'C'.