Часто в процессе работы с данными в Python возникает необходимость проверки на наличие значений NaN (Not a Number). Например, при анализе датасета, содержащего числовые значения, может возникнуть ситуация, когда данные в некоторых ячейках отсутствуют или некорректны. В таких случаях они могут быть обозначены как NaN.
Рассмотрим пример:
import pandas as pd import numpy as np data = {'A': [1, 2, np.nan], 'B': [5, np.nan, np.nan], 'C': [1, 2, 3]} df = pd.DataFrame(data)
В этом примере датафрейм df
содержит значения NaN
. Чтобы определить наличие таких значений, можно использовать различные методы.
Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Использование функции isnan()
Один из способов — использовать функцию isnan()
из библиотеки numpy
. Эта функция возвращает True
, если значение является NaN
, и False
в противном случае.
print(np.isnan(df['A'][2]))
В этом коде проверяется, является ли значение в третьей строке столбца ‘A’ датафрейма df
значением NaN
.
Использование метода isnull()
Еще одним способом является использование метода isnull()
для объектов pandas.DataFrame
или pandas.Series
. Этот метод возвращает True
для значений NaN
и False
для других значений.
print(df['B'].isnull())
В данном случае, isnull()
проверяет наличие значений NaN
в столбце ‘B’ датафрейма df
.
Вывод будет следующим:
0 False 1 True 2 True Name: B, dtype: bool
Таким образом, проверка на наличие значений NaN
в Python может быть выполнена различными способами. Выбор конкретного метода зависит от конкретной задачи и используемых инструментов.
На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.
Добавить комментарий