R - 根据另一列中的NA值更改一列中的值

时间:2018-02-01 16:19:19

标签: r if-statement transform

我正在研究一个包含用户教育信息的数据集。

我想根据Var1中的NA值将Freq列中的值更改为“0”。因此,如果Var1 = NA,则Freq = 0.

See picture

对于我的生活,我无法理解并需要一些帮助。

你们中的任何人都知道如何应对这个问题吗?

1 个答案:

答案 0 :(得分:0)

两种解决方案:

library(dplyr)

#Some data
dat <- 
  data.frame(var1 = sample(c(1:3, rep(NA, 5)), 10, TRUE), 
             var2 = rnorm(10), 
             freq = rnorm(10, 100))

#The "dplyr" way
dat %>%
  mutate(freq = ifelse(is.na(var1), 0, freq))

#subset/replace from AdamO
dat$freq[is.na(dat$var1)] <- 0