R:将函数应用于数据帧中的每个条目

时间:2017-11-16 21:52:56

标签: r apply

我想让数据框中的每个元素(除了ID列之外)变为0,如果它是1以外的任何数字。

我有:

ID  A B C D E
abc 5 3 1 4 1
def 4 1 3 2 5

我想:

ID  A B C D E
abc 0 0 1 0 1
def 0 1 0 0 0

我无法确定如何指定要对每个列和每行中的每个条目执行此操作。

这是我的代码:

apply(dat.lec, 2 , function(y) 
  if(!is.na(y)){
      if(y==1){y <- 1}
      else{y <-0} 
     }
  else {y<- NA}
)

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

无需隐式或显式循环。

NavigationView