结合2个虚拟变量

问题描述

我有2个虚拟变量,我希望以某种方式将它们组合起来,这样我就有了一个新变量,如果变量A或B都为1,则将其置为1。

例如

变量A: 0 0 0 1个 1

变量B: 1 0 1 0 1

变量C(理想情况下): 1 0 1 1 1

任何帮助将不胜感激!我知道这很简单..回到R并感到生锈!

解决方法

我们可以通过逻辑比较来做到这一点!在这种情况下,最好的选择是OR运算符,即管道:|

set.seed(1234)

var_a <- round(runif(10))
var_b <- round(runif(10))

var_c <- var_a|var_b

rbind(var_a,var_b,var_c)

enter image description here

之所以可行,是因为R会自动将数字0和1s强制转换为逻辑FALSE和TRUE,然后我们在自动将其强制转换为数字之前使用OR进行比较。

欢迎回到R!