我有两列的数据框。我希望“ id”列是唯一的,并且非重复id的值应设置为相同的值,对于重复id的值应为NA。
library(data.table)
DT <- data.table(id = c(1,2,3,3,4,5,5), value = c(17,13,8,NA,9,NA,11))
DT
id value
1: 1 17
2: 2 13
3: 3 8
4: 3 NA
5: 4 9
6: 5 NA
7: 5 11
Run Code Online (Sandbox Code Playgroud)
预期产量
id value
1: 1 17
2: 2 13
3: 3 NA
4: 4 9
5: 5 NA
Run Code Online (Sandbox Code Playgroud)
这是一个选择:
> DT[, .(value = if(.N == 1) value else NA_real_), by = .(id)]
id value
1: 1 17
2: 2 13
3: 3 NA
4: 4 9
5: 5 NA
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
65 次 |
最近记录: |