R:通过检查同一行中的其他列来更新列值

时间:2016-11-29 23:46:35

标签: r vector dataframe

我在R中有以下数据框,如果其他3个要素列(feat_1,feat_2和feat_3)中的任何一个包含1:feat_4中的值更新为1 p>

Name  feat_1  feat_2  feat_3   feat_4
Tom    0        0       0        0
David  1        0       1        0
Tim    0        1       0        0

我知道我可以通过使用这样的for-loop来做到这一点,但是有更高效/矢量化的方法吗?我可以拥有比上面显示的更多的列。谢谢你的帮助!

for (row in 1:nrow(df)) {
  if (any(df[row,2:4] == 1)) {
     df$feat_4 = 1
  }
}

0 个答案:

没有答案