假设我有以下 data.table
library(data.table)
DT = data.table(Col1 = LETTERS[1:10], Col2 = c(1,4,2,3,6,NA,4,2, 5, 4))
DT
Col1 Col2
1: A 1
2: B 4
3: C 2
4: D 3
5: E 6
6: F NA
7: G 4
8: H 2
9: I 5
10: J 4
现在我想用 4 and NA
Col2
中的 999
值
在实际场景中,我有非常大的 DT
,因此我正在寻找实现相同目标的最有效方法。
任何见解将不胜感激。
答案 0 :(得分:1)
带有 na_if/replace_na
的选项
library(dplyr)
library(data.table)
DT[, Col2 := replace_na(na_if(Col2, 4), 999)]