Rem*_*i.b 18 r logical-operators
我无法理解逻辑(布尔)值的属性TRUE,FALSE以及NA与逻辑OR(|)和逻辑AND(&)一起使用时.这里有些例子:
NA | TRUE
# [1] TRUE
NA | FALSE
# [1] NA
NA & TRUE
# [1] NA
NA & FALSE
# [1] FALSE
Run Code Online (Sandbox Code Playgroud)
你能解释一下这些输出吗?
jor*_*ran 27
引用来自?Logic:
NA是一个有效的逻辑对象.如果x或y的分量是NA,如果结果不明确,则结果将是NA.换句话说,NA&TRUE评估为NA,但NA&FALSE评估为FALSE.请参阅以下示例.
关键是"模棱两可"这个词.NA代表"未知"的东西.所以NA & TRUE可能是真或假,但我们不知道.而NA & FALSE将是错误的,无论缺失值是什么.
Jos*_*ich 12
它的解释help("|")如下:
NA是一个有效的逻辑对象.其中的一个组成部分x或者y是NA,结果将是NA,如果结果是不明确的.换句话说,NA & TRUE评估为NA,但NA & FALSE评估为FALSE.请参阅以下示例.
从以下示例help("|"):
x <- c(NA, FALSE, TRUE)
names(x) <- as.character(x)
outer(x, x, "&") ## AND table
# <NA> FALSE TRUE
# <NA> NA FALSE NA
# FALSE FALSE FALSE FALSE
# TRUE NA FALSE TRUE
outer(x, x, "|") ## OR table
# <NA> FALSE TRUE
# <NA> NA NA TRUE
# FALSE NA FALSE TRUE
# TRUE TRUE TRUE TRUE
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1564 次 |
| 最近记录: |