2017-02-13 6 views
3

まだRの初心者ユーザーで、Rプログラミング技術を向上させるためにHadleyのAdvanced Rを読んでいます。NULLタイプのオブジェクトはR

私は彼の本の中で、このコードに出くわした:

NULL>0 

このコードの出力はlogical(0)です。

私はこの上の2つの質問があります。

質問を1logical(0)は何を意味するのでしょうか?

質問2:私は返り値としてTRUE/FALSEを期待していました。これは、彼がRの強制の規則について話しているからです。具体的には、論理<整数<ダブル<文字(最も柔軟なものから最も柔軟なもの)です。したがって、私はNULLが論理型であると仮定します。

NULLがこの式に当てはまる場所はわかりません。私はどんな説明も感謝します。

ありがとうございます。

答えて

4

logical(0)は、長さゼロの論理ベクトルです。 NULLは、typeof(NULL)と表示され、何も含まれていない独自のタイプです(length(NULL)など)。

NULLと0を比較するのは意味がありません。それは数値ではなく、まったく値でもありません。比較はできませんので、論理値は返されず、空のベクトルだけが返されます。むしろエラーを生じるか、変換されるよりも、無視され

c(TRUE, FALSE, NULL) 

NULL

は、例えばの出力を考えます。文字通り何もないと考えてください。これは、特定のタイプの値が欠落していることを示すNAとは異なります。上記の連結の場合は、NULLNAに置き換えてみてください。

関連する問題