pandas.DataFrame.dropna#

DataFrame.dropna(*, axis=0, how=, thresh=, subset=None, inplace=False, ignore_index=False)[источник]#

Удалить пропущенные значения.

См. Руководство пользователя для получения дополнительной информации о том, какие значения считаются пропущенными и как работать с пропущенными данными.

Параметры:
ось{0 или 'index', 1 или 'columns'}, по умолчанию 0

Определить, удаляются ли строки или столбцы, содержащие пропущенные значения.

  • 0, или 'index' : Удалить строки, содержащие пропущенные значения.

  • 1 или 'columns': Удалить столбцы, содержащие пропущенные значения.

Разрешена только одна ось.

how{‘any’, ‘all’}, по умолчанию ‘any’

Определить, удаляется ли строка или столбец из DataFrame, когда у нас есть хотя бы одно NA или все NA.

  • ‘any’: Если присутствуют любые значения NA, удалить эту строку или столбец.

  • ‘all’ : Если все значения NA, удалить эту строку или столбец.

порогint, необязательный

Требовать столько не-NA значений. Нельзя комбинировать с how.

subsetметка столбца или последовательность меток, опционально

Метки вдоль другой оси для учёта, например, если вы удаляете строки, это будет список столбцов для включения.

inplacebool, по умолчанию False

Следует ли изменять DataFrame вместо создания нового.

ignore_indexbool, по умолчанию False

Если True, результирующая ось будет помечена как 0, 1, …, n - 1.

Добавлено в версии 2.0.0.

Возвращает:
DataFrame или None

DataFrame с удалёнными NA записями или None, если inplace=True.

Смотрите также

DataFrame.isna

Обозначение пропущенных значений.

DataFrame.notna

Указывает существующие (не пропущенные) значения.

DataFrame.fillna

Заменить пропущенные значения.

Series.dropna

Удалить пропущенные значения.

Index.dropna

Удалить отсутствующие индексы.

Примеры

>>> df = pd.DataFrame({"name": ['Alfred', 'Batman', 'Catwoman'],
...                    "toy": [np.nan, 'Batmobile', 'Bullwhip'],
...                    "born": [pd.NaT, pd.Timestamp("1940-04-25"),
...                             pd.NaT]})
>>> df
       name        toy       born
0    Alfred        NaN        NaT
1    Batman  Batmobile 1940-04-25
2  Catwoman   Bullwhip        NaT

Удалить строки, где отсутствует хотя бы один элемент.

>>> df.dropna()
     name        toy       born
1  Batman  Batmobile 1940-04-25

Удалить столбцы, в которых отсутствует хотя бы один элемент.

>>> df.dropna(axis='columns')
       name
0    Alfred
1    Batman
2  Catwoman

Удалить строки, где все элементы отсутствуют.

>>> df.dropna(how='all')
       name        toy       born
0    Alfred        NaN        NaT
1    Batman  Batmobile 1940-04-25
2  Catwoman   Bullwhip        NaT

Оставить только строки с как минимум 2 не-NA значениями.

>>> df.dropna(thresh=2)
       name        toy       born
1    Batman  Batmobile 1940-04-25
2  Catwoman   Bullwhip        NaT

Определить, в каких столбцах искать пропущенные значения.

>>> df.dropna(subset=['name', 'toy'])
       name        toy       born
1    Batman  Batmobile 1940-04-25
2  Catwoman   Bullwhip        NaT