Почему ?NA и ?NULL говорят мне, что "NA" имеет длину "1", тогда как NULL имеет длину "0"?
Ответ 1
Фактически 1/0 - это Бесконечность, а не NaN, проверяйте это.
В языке R -
существует два близких значения NULL-типа, NA и NULL. Оба используются для представления отсутствующих или undefined значений.
NULL представляет нулевой объект, это зарезервированное слово.
NULL, возможно, возвращается выражениями и функциями, поэтому значения undefined.
NA - это логическая константа длины 1, которая содержит индикатор отсутствующего значения. NA можно свободно принуждать к любому другому векторному типу, кроме raw.
Существуют также константы NA_integer_, NA_real_, NA_complex_ и NA_character_ других типов атомных векторов, которые поддерживают отсутствующие значения: все это зарезервированные слова в языке R.
Ответ 2
Короче говоря, я бы сказал следующее:
NaN : means 0/0 -- Stands for Not a Number
NA : is generally interpreted as a missing, does not exist
NULL : is for empty object.
но для точного определения вы можете прочитать документацию, которая очень хорошо написана.