set.seed(1)
data=data.frame("a"=sample(-5:5, 20, r=T),
"b"=sample(-5:5, 20, r=T),
"c"=sample(-5:5, 20, r=T))
最有效的设置值:使用实际列名在'a'和'b'和'c'上将值-5,-3、4设置为'NA'的方法?
使用dplyr
,您可以尝试:
data %>%
mutate_at(vars(a, b, c), ~ replace(., . %in% c(-5, -3, 4), NA))
a b c
1 NA 5 NA
2 -1 NA 2
3 1 2 3
4 NA -4 1
5 NA NA 0
6 NA -1 3
7 5 NA NA
8 2 -1 0
9 1 NA 3
10 NA -2 2
一个选项。是
data[data == c(-5, -3, 4)[col(data)]] <- NA