根据条件在数据框中创建新变量

时间:2016-11-21 15:51:51

标签: r if-statement

我在R中有一个数据框。例如,数据框名为X,包括以下列:

x1 = c(1,0,0,0)
X2 = c(0,0,0,0)
X3 = c(0,0,0,0)
X4 = c(0,0,1,0)

我想添加一个条件,对于4个主题中的每一个,如果至少有一列是1,那么将创建一个新变量1.否则,如果全部为0,则新变量将为0。 / p>

我试过了:

if (X$X1 == 1 || X$X2 == 1 || X$X3 == 1 || X$X4 == 1 || X$X5 == 1) 
{
  NewVar = 1
}
else { NewVar = 0 }

但是我一直收到错误:

  

错误:“else”中的意外'else'和我的代码R studio中说:   意外的标记'else'

你可以帮我找到问题吗?谢谢。

1 个答案:

答案 0 :(得分:1)

我们可以使用rowSums

X$NewVar <- as.integer(rowSums(X) > 0)