假设我有以下数据:
Var1 = (1,1,0,1,0,1,0,1,1,0,1,1,0,0,0,1,0)
Var2 = (1,0,0,1,1,0,0,1,0,1,0,1,1,1,0,1,1)
Var3 = (0,0,0,1,1,1,0,0,1,0,1,0,0,0,1,0,0)
在R中使用if
/ else
语法,我需要创建新的Var4
,以便
if var1=1 & var2=1 & var3=1 then var4=1
if var1=0 & var2=0 & var3=0 then var4=0
if var1=1 & var2=0 & var3=0 the var4=1 and so on.
基本上,var4=0
仅在所有三个变量都= 0时。
答案 0 :(得分:2)
我们可以cbind
'var'向量,获取rowSums
并检查它是否大于0,然后用+
强制将逻辑转换为二进制。
+(rowSums(cbind(Var1, Var2, Var3)) > 0)
或使用|
as.integer(Var1|Var2|Var3)