我有數據,看起來像這樣:ifelse沒有結束行循環如預期
df <- read.table(tc <- textConnection("
var1 var2 var3 var4
1 1 7 NA
4 4 NA 6
2 NA 3 NA
4 4 4 4
1 3 1 1"), header = TRUE); close(tc)
我試圖創造,如果有,如果沒有匹配或0返回1的新列。
我不工作的代碼如下所示:
df$var5 = ifelse("1" %in% df$var1,1,
ifelse("1" %in% df$var2,1,
ifelse("1" %in% df$var3,1,
ifelse("1" %in% df$var4,1,0))))
給我一個表:
var1 var2 var3 var4 var5
1 1 7 NA 1
4 4 NA 6 1
2 NA 3 NA 1
4 4 4 4 1
1 3 1 1 1
表其實我是想應該像
var1 var2 var3 var4 var5
1 1 7 NA 1
4 4 NA 6 0
2 NA 3 NA 0
4 4 4 4 0
1 3 1 1 1
我已經看了帖子:
ifelse not working as expected in R
和
Loop over rows of dataframe applying function with if-statement
,但我無法得到任何回答我的問題。