r语言 - 涉及 NA 的逻辑运算



由于"is.na(NA("返回true,而"NA> 0"返回NA,因此"is.na(NA(&(NA> 0("应返回NA,这是true。

is.na(NA( & NA>0

[1] 不适用

同样,"!is.na(NA("返回false,"NA> 0"返回NA,"!is.na(NA(&(NA> 0("也应返回NA。但 R 返回 false。这是为什么呢?

!is.na(NA( & NA>0

[1] 错误

根据?"&"

NA 是有效的逻辑对象。如果 x 或 y 的分量为 NA,如果结果不明确,则结果将为 NA。换句话说,NA & TRUE 的计算结果为 NA,但 NA & FALSE 的计算结果为 FALSE。请参阅以下示例。

在 OP 的条件下,第一个计算结果为

TRUE & NA #(is.na(NA)#[1] TRUE;NA > 0#[1] NA)

第二个是

FALSE & NA #(!is.na(NA)#[1] FALSE)

相关内容

  • 没有找到相关文章

最新更新