【发布时间】:2020-10-03 02:46:17
【问题描述】:
我正在尝试找到一种方法来分离我的数据中的各种间隔,以便与 ID 关联的每一行都有它的最小和最大持续时间,按 NA 月份划分。
我的数据看起来像这样,但有 9 列和 275 行
df <- data.frame("ID" = c(1:5),
"jan" = c("2020-01-01",NA, "2020-01-01", "2020-01-01", "2020-01-01"),
"feb" = c("2020-02-01", "2020-02-01", NA, "2020-02-01", "2020-02-01"),
"mar" = c("2020-03-01", "2020-03-01", NA, "2020-03-01", NA),
"apr" = c(NA, "2020-04-01", NA, "2020-04-01", "2020-04-01"),
"may" = c("2020-05-01", "2020-05-01", NA ,NA, "2020-05-01"),
"jun" = c("2020-06-01", "2020-06-01", "2020-06-01", NA, NA)
)
理想情况下,列应该是这样的:
ID Start1 Stop1 Start2 Stop2
1 "2020-01-01" "2020-03-01" "2020-05-01" "2020-06-01"
....
编辑:我已经编辑了这个要求,因为 A)它被标记为重复,尽管重复问题只是切线相关,B)因为我真的在寻找一个 tidyverse 解决方案 - 这就是我得到的
p>【问题讨论】: