Python에서 NaN 값 확인

Manav Narula 2023년1월30일
  1. math.isnan()함수를 사용하여 Python에서nan값 확인
  2. numpy.isnan()함수를 사용하여 Python에서nan값 확인
  3. pandas.isna()함수를 사용하여 Python에서nan값 확인
  4. obj != obj을 사용하여 Python에서nan값을 확인합니다
Python에서 NaN 값 확인

nan은 주어진 값이 유효하지 않음을 나타내는 상수입니다 - Not a Number.

nanNULL은 서로 다른 두 가지입니다. NULL값은 존재하지 않고 비어있는 것을 나타냅니다.

파이썬에서 우리는 다른 객체에서 그러한 값을 매우 자주 다룹니다. 따라서 이러한 상수를 감지 할 필요가 있습니다.

Python에는nan값을 확인할 수있는isnan()함수가 있습니다. 그리고이 함수는NumPymath의 두 가지 모듈에서 사용할 수 있습니다. pandas모듈의isna()함수는nan값도 확인할 수 있습니다.

math.isnan()함수를 사용하여 Python에서nan값 확인

math라이브러리의isnan()함수를 사용하여 부동 객체에서nan상수를 확인할 수 있습니다. 이러한 모든 값에 대해True를 반환합니다. 예를 들면 :

import math
import numpy as np

b = math.nan
print(np.isnan(b))

출력:

True

math.nan상수는nan값을 나타냅니다.

numpy.isnan()함수를 사용하여 Python에서nan값 확인

numpy.isnan()함수는nan값에 대해 목록, 배열 등과 같은 다양한 컬렉션을 확인할 수 있습니다. 각 요소를 확인하고nan상수를 만날 때마다True로 배열을 반환합니다. 예를 들면 :

import numpy as np

a = np.array([5, 6, np.NaN])

print(np.isnan(a))

출력:

[False False  True]

np.NaN()상수는nan 값도 나타냅니다.

pandas.isna()함수를 사용하여 Python에서nan값 확인

pandas모듈의isna()함수는NULL또는nan값을 감지 할 수 있습니다. 이러한 모든 값에 대해True를 반환합니다. DataFrame 또는 Series 개체에서도 이러한 값을 확인할 수 있습니다. 예를 들면,

import pandas as pd
import numpy as np

ser = pd.Series([5, 6, np.NaN])

print(pd.isna(ser))

출력:

0    False
1    False
2     True
dtype: bool

obj != obj을 사용하여 Python에서nan값을 확인합니다

nan을 제외한 모든 객체의 경우obj == obj표현식은 항상True를 반환합니다. 예를 들면

print([] == [])
print("1" == "1")
print([1, 2, 3] == [1, 2, 3])
print(float("nan") == float("nan"))

따라서obj != obj를 사용하여 값이nan인지 확인할 수 있습니다. 반환 값이True이면nan입니다.

import math

b = math.nan


def isNaN(num):
    return num != num


print(isNaN(b))

출력:

True

그러나이 방법은 더 낮은 버전의 Python (<=Python 2.5)에서는 실패 할 수 있습니다.

작가: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

관련 문장 - Python Math