1
我有以下数据框:误差ifelse语句
a <- c("OK", "OK", "2", "3", "5")
b <- c(1, 2, 3, 4, 5)
df <- data.frame(a, b)
如果DF $ a的值是“OK”,我想价值是无论是在DF $ B 。
如果df $ a中的值不是“OK”,我希望它保持不变。
所以,最好是在这种情况下,DF $一个将成为:1,2,2,3,5
我试着用下面的ifelse语句,但得到的错误“状态具有长度> 1只有第一个元素将被使用“。
if(df$a == "OK") {
df$a <- df$b
} else {
df$a <- df$a
}
因此,df $ a只是变成了df $ b,else语句没有被评估。我相信这是一个简单的修复,但不知道我哪里出错了。谢谢你的帮助!