EDITED
我有一个数据框,其中标识变量包含重复项。如何创建一个新变量(VAR2),我根据此标识变量为NA指定值。
df <- data.frame(
ID = c(1,2,3,4,4,4,7,8,9,10),
VAR1 = c("a","b","c","d",NA,NA,"g","h","i","j")
)
数据框如下所示:
ID VAR1
1 a
2 b
3 c
4 d
4 NA
4 NA
7 g
8 h
9 i
10 j
预期输出
ID VAR1
1 a
2 b
3 c
4 d
4 d
4 d
7 g
8 h
9 i
10 j
答案 0 :(得分:0)
require(data.table)
df <- fread('ID VAR1 VAR2
1 a a
2 b b
3 c c
4 d d
4 NA d
4 NA d
7 g g
8 h h
9 i i
10 j j')[,-'VAR1']
df
df[, VAR1 := replace(VAR2, seq_len(.N) > 1, NA), by = ID]
df