我正在尝试用NA替换我的观察结果。我想仅针对由给定ID表示的每个组的前两个观察值替换NA。
所以来自:
id b
1 1 0.1125294
2 1 -0.6871102
3 1 0.1721639
4 2 0.2714921
5 2 0.1012665
6 2 -0.3538989
得到:
id b
1 1 NA
2 1 NA
3 1 0.1721639
4 2 NA
5 2 NA
6 2 -0.3538989
试过这个,但它不起作用......
data<- data %>% group_by(id) %>% mutate(data$b[1:2] = NA)
感谢您的帮助!
答案 0 :(得分:1)
library(dplyr)
df <- data.frame(id = rep(1:2, each = 3), value = rnorm(6))
df %>% group_by(id) %>% mutate(value=replace(value, 1:2, NA))