【发布时间】:2021-12-18 02:26:59
【问题描述】:
我想按组用数字序列唯一地填充 NA。
这是一个最小的数据集:
d
#> id year
#> 1 1 1998
#> 2 1 1999
#> 3 1 2001
#> 4 1 NA
#> 5 1 NA
#> 6 2 1997
#> 7 2 1999
#> 8 2 2001
#> 9 2 NA
#> 10 2 NA
#> 11 3 1997
#> 12 3 1998
#> 13 3 1999
#> 14 3 2000
#> 15 3 2001
#data set
structure(list(id = c(1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L,
3L, 3L, 3L, 3L, 3L), year = structure(list(year = c(1997L, 1998L,
1999L, 2000L, NA, 1998L, 1999L, 2001L, NA, NA, 1998L, 1999L,
2000L, 2001L, NA)), class = "data.frame", row.names = c(NA, -15L
))), row.names = c(NA, -15L), class = "data.frame")
NAs 应替换为 1997 到 2001 的数字序列的一个未采用的值;这样生成的数据框如下所示:
#> id year
#> 1 1 1997
#> 2 1 1998
#> 3 1 1999
#> 4 1 2000
#> 5 1 2001
#> 6 2 1997
#> 7 2 1998
#> 8 2 1999
#> 9 2 2000
#> 10 2 2001
#> 11 3 1997
#> 12 3 1998
#> 13 3 1999
#> 14 3 2000
#> 15 3 2001
#data set
structure(list(id = c(1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L,
3L, 3L, 3L, 3L, 3L), year = c(1997L, 1998L, 1999L, 2000L, 2001L,
1997L, 1998L, 1999L, 2000L, 2001L, 1997L, 1998L, 1999L, 2000L,
2001L)), class = "data.frame", row.names = c(NA, -15L))
【问题讨论】:
标签: r dplyr grouping na data-wrangling