【Statistics with “R”】
NAとNaNとNULL
【Statistics with “R”】
大まかにまとめると以下の表のような区別になります。
値 | 由来 | 日本語 | 説明 |
NA | Not Available | 欠損値 | 本来データが存在しているが、何らかの理由で存在していない状態 |
NaN | Not a Number | 非数値 | 計算不可能な式の結果 |
NULL | Null | 非存在 | 値が存在していない |
Rでは、各データ型に対してNAが用意されています。たとえば、文字列のベクトルの中にある欠損値NAは、文字列型のNAとして扱われます。実数型のベクトルの中にあるNAは、実数型のNAとして扱われます。
NaNは実数型の一種です。NaNは計算不可能な式の結果を示すもので、数値計算の結果です。数値計算の結果という意味で、実数型として処理されます。
NULLはデータが存在しないことを示します。NULLとNAの区別は次のように言えます。NAがデータがするはずなのに何らかの理由で存在しないことを表す一方で、NULLはもともとデータが存在しないことを示します。
xがNAなのか、NaNなのか、それともNULLなのかを調べるには以下のコードを適用できます。
コード | 実行結果 |
is.na(x) | xがNAか否かを返す |
is.nan(x) | xがNaNか否かを返す |
is.null(x) | xがNULLか否かを返す |