如何使用dplyr更新值

时间:2014-04-15 08:55:09

标签: r dplyr

我目前正在尝试使用dplyr更新data.frame中的值,但我不知道是否可以替换值的子集?

# the net4 table
head(net4)
Source: local data frame [6 x 4]

  temps2 NNET NET ave
1     18    2   4  36
2     18    2   4  36
3     22    2   4  44
4     18    2   4  36
5     22    2   4  44
6     27    3   4  36

# I would like to do the same command line as below:
subs <- (net4$ave < 10 & net4$ave!=net4$temps2)
net4$ave[subs] <- with(net4[subs,], temps2/NNET*NET)

由于

1 个答案:

答案 0 :(得分:49)

使用mutateifelse

mutate(net4,
  ave = ifelse(ave < 10 & ave != temp2, temps2 / NNET * NET, ave)
)