【发布时间】:2016-11-21 23:59:08
【问题描述】:
我在 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。
我试过了:
if (X$X1 == 1 || X$X2 == 1 || X$X3 == 1 || X$X4 == 1 || X$X5 == 1)
{
NewVar = 1
}
else { NewVar = 0 }
但是我不断收到错误:
错误:“else”中的意外“else”和我的代码 R 工作室说: 意外的令牌“其他”
您能帮我找出问题吗?谢谢。
【问题讨论】:
-
使用
X$NewVar <- as.integer(rowSums(X)>0) -
df$newvar <- as.integer(rowSums(df) > 0)
标签: r if-statement