R:返回False的False或NA

时间:2016-05-11 08:20:01

标签: r logical-operators na

在R语言中,我需要一个返回|的运算符b,除非a或b是NA而另一个是F。

目前,F | NA返回NA,我希望它返回F。

此功能应与矢量配合使用。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

知道了!

myor = function(a,b){
  !((is.na(a) & !b) | (is.na(b) & !a) | (!a & !b))
}   

> myor(T,T)
[1] TRUE
> myor(T,F)
[1] TRUE
> myor(F,F)
[1] FALSE
> myor(F,NA)
[1] FALSE
> myor(NA,NA)
[1] NA
> myor(T,NA)
[1] TRUE