【发布时间】:2022-01-17 20:04:52
【问题描述】:
我有一个这样的数据框:
df <- data_frame(id = c(rep('A', 10), rep('B', 10)),
value = c(1:3, rep(NA, 2), 1:2, rep(NA, 3), 1, rep(NA, 4), 1:3, rep(NA, 2)))
我需要计算value 列中连续 NA 的数量。计数需要按 ID 分组,每次遇到新的 NA 或新的一系列 NA 时都需要从 1 重新开始。预期的输出应如下所示:
df$expected_output <- c(rep(NA, 3), 1:2, rep(NA, 2), 1:3, NA, 1:4, rep(NA, 3), 1:2)
如果有人能给我一个 dplyr 解决方案,那就太好了:)
我尝试了一些方法,但都没有给出任何有意义的结果。提前谢谢^!
【问题讨论】: