r - NA 识别 boolean 运算符

标签 r boolean na

是否有一个 boolean 运算符可以给我 NA如果任何零件是 NA ?
目前

NA & FALSE == FALSE
FALSE & NA == FALSE
NA & TRUE  == NA
TRUE & NA  == NA

我想要:
NA x FALSE == NA
FALSE x NA == NA

PS:

我正在寻找一个操作符 x
  x     |  a=TRUE  |  =FALSE | =NA
-----------------------------------
b=TRUE  |    TRUE  |   FALSE |  NA
 =FALSE |    FALSE |   FALSE |  NA
 =NA    |    NA    |   NA    |  NA

所以我可以做
result <- a x b

最佳答案

您可以定义自己的运算符来执行您想要的操作。

> `%and%` <- function(x, y){as.logical(x*y)}
> NA %and% FALSE
[1] NA
> FALSE %and% NA
[1] NA
> NA %and% TRUE
[1] NA
> TRUE %and% NA
[1] NA

关于r - NA 识别 boolean 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17148381/

相关文章:

r - 如何在数据帧的特定索引中插入行,其中仅在 R pipe dplyr 中包含上面几行的总和

python-3.x - 减少 return 语句的数量

Haskell:检查所有条件是否为真。如果他们是返回真否则假

java - 检查 boolean 数组中的所有值是否为真的最优雅方法是什么?

r - 子集非NA

替换数据框列表中编号列的 NA

r - 使用 ggplot2 在 log10 刻度上进行小刻度

javascript - R 传单包产生空白(灰色) map [Ubuntu 14.04]

R data.table : subsetting data. 基于行值大小的表/数据帧

使用 R 中的坐标从矩阵中删除值