请注意,MattTyers 的答案甚至比我的更简单,因为它可以进行布尔运算,将二进制数转换为十进制数。
我想合并两个向量,同时保持相同维度的结果向量,但如果满足特定条件,则覆盖值。
在本例中,我有两个 T 和 F 值的向量。比方说
A <- c(T F T F)
B <- c(T T F F)
我想合并它们并获得一个保留 TRUE 的向量,如果它出现在任一向量中,则
C <- c(T T T F)
最好获得可以处理任何值(不仅仅是 TRUE(但不是必需的代码。
花了大约两个小时试图解决这个问题但没有成功,所以我非常感谢社区的投入。
这比这更容易,只需A | B
.
使用布尔运算怎么样?要保留TRUE
值,您可能需要这样做
> !!(A+B)
[1] TRUE TRUE TRUE FALSE
或者为了保留FALSE
值,
> !!(A*B)
[1] TRUE FALSE FALSE FALSE
但是,这可能不是您真正想要的,因为此解决方案无法处理非布尔值的类型。
请注意,MattTyers 的答案甚至比我的更简单,因为它可以进行布尔运算,将二进制数转换为十进制数。