Python で NaN 値をチェックする
-
Python で
nan値を確認するにはmath.isnan()関数を使用する -
Python の
nan値を確認するにはnumpy.isnan()関数を使用する -
Python で
nan値を確認するにはpandas.isna()関数を使用する -
Python で
obj != objを使用してnanの値をチェックする
nan は、与えられた値が正規の値ではないことを示す定数でです -Not a Number です。
nan と NULL は別のものであることに注意してください。NULL 値は存在しない何かを示し、空であることを示します。
Python では、さまざまなオブジェクトでこのような値を頻繁に扱います。そのため、このような定数を検出する必要があります。
Python には isnan() 関数があり、これを使って nan 値を調べることができる。この関数は NumPy と math の 2つのモジュールで利用できます。pandas モジュールの isna() 関数も nan 値を調べることができます。
Python で nan 値を確認するには math.isnan() 関数を使用する
math ライブラリの isnan() 関数を用いると、float オブジェクトの nan 定数を調べることができます。この関数は、そのような値が見つかるたびに True を返します。例えば、
import math
import numpy as np
b = math.nan
print(np.isnan(b))
出力:
True
定数 math.nan は nan の値を表していることに注意してください。
Python の nan 値を確認するには numpy.isnan() 関数を使用する
関数 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 の値も表します。
Python で nan 値を確認するには pandas.isna() 関数を使用する
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
Python で obj != obj を使用して 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 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