np.nan: как использовать NaN в массиве Numpy

Python NumPy использует стандарт IEEE для двоичных чисел с плавающей запятой для арифметики (IEEE 754). Это означает, что Not a Number не эквивалентно бесконечности. NaN и NAN — это псевдонимы nan .

np.nan

numpy nan — это представление Not a Number с плавающей запятой IEEE 754. nan означает « не число », и его основная константа должна действовать как заполнитель для любых отсутствующих числовых значений в массиве.

Значения nan — это константы, определенные в numpy: nan, inf. NaN можно использовать как маску бедняги, что означает, если вам все равно, каково было исходное значение.

Хотя мы уже рассмотрели несколько различных способов обработки значений NaN, я хотел бы более подробно остановиться на некоторых функциях NaN в NumPy.

Большая часть данных, с которыми вы будете работать, будет предоставлена ​​вам. Как мы видели, когда мы используем Pandas для импорта DataFrame, любое отсутствующее значение автоматически заменяется NaN в качестве заполнителя. Но мы также можем имитировать то же поведение непосредственно в NumPy.

Синтаксис

 numpy.nan 

Пример

См. следующий код.

 # app.pyimport numpy as npmyarr = np.array ([1, 0, np.nan, 3]) print (myarr) 

Вывод

 python3 app.py [1. 0. nan 3.] 

Важная вещь, которую я хотел бы, чтобы вы вынесли из этого, — это то, что все наши целые числа имеют были преобразованы в числа с плавающей запятой, и это потому, что NumPy определил тип данных NaN как число с плавающей запятой. Из-за неявного преобразования все наши элементы были преобразованы в тип данных с плавающей запятой.

Элементы NaN также имеют приоритет над всеми остальными элементами, когда с ними также используются математические операции.

См. значение nan в консоли.

 # app.pyimport numpy as npprint (np.nan) 

Вывод

 python3 app.pynan 

Давайте сравним два значения NaN и посмотрим, совпадают они или нет.

 #  app.pyimport numpy как npprint (np.nan == np.nan) 

Вывод

 python3 app.pyFalse 

Numpy isnan ()

Функция Numpy isnan () поэлементно проверяет NaN и возвращает результат в виде логического массива. Numpy использует стандарт IEEE для двоичных чисел с плавающей запятой для арифметики (IEEE 754). Это означает, что Not a Number не эквивалентно бесконечности.

 # app.pyimport numpy as npprint (np.isnan  (np.nan)) 

Вывод

 python3 app.pyTrue 

Заключение

Когда вы готовите данные для машинного обучения или искусственного интеллекта, важно сначала проверить, а затем убедиться, что вы удалили или заменили каждый элемент NaN на этапе предварительной обработки..

Отсутствие единственного элемента NaN может вызвать серьезные проблемы в вашем конечном результате из-за его способности распространяться по вашим данным.

Наконец, пример константы Numpy nan окончен.

См. Также

Python isnan ()

Python isinf ()

Numpy isfinite ()

Numpy isreal ()

Numpy save ()

Оцените статью
nanomode.ru
Добавить комментарий