我有关于不同人 ( ID)、他们工作的日期 ( Date) 以及他们每个日期工作了多少小时 ( Hours) 的数据。
周一至周五被视为工作日。对于每个ID,我想对连续工作日进行分组。在决定工作日是否连续时,应省略周末和节假日。
一些例子:
如果一个人在周一、周二和周三工作,然后跳过周四,并在周五再次工作,那么周一至周三被视为一组,周五被视为另一组。
如果一个人每周周四和周五工作,下周周一和周二工作,那么这四天应该在同一组中。因此,当检查若在周末的日子里被省略工作日内是连续的。
如果一周的周一 - 周五和下周的周一 - 周五,那么我会将这两个星期算作连续的工作日。
我还想考虑美国常见的假期(例如新年),这样 12/31/2020 至 1/4/2021 仍将算作连续工作日。
创建分组变量后,我想对每个组的工作时间求和。
示例数据:
df1 = structure(list(ID = c(1, 1, 1, 1, 2, 2, 3, 3,
3, 3), Date = structure(c(18781, 18782, 18785, 18750, 18687,
18688, 18626, 18627, 18631, 18634), class = "Date"), Hours = c(8,
8, 8, 16, 8, 8, 8, 8, 8, 8)), row.names = c(NA, -10L), class = "data.frame")
ID Date …Run Code Online (Sandbox Code Playgroud) 我是新的 stackoverflow 用户,目前无法对原始帖子发表评论来提问。我遇到了之前的 stackoverflow 答案(/sf/answers/2383154791/),我想知道如何在此图中添加两条垂直线(组的平均值和组的中位数)。
我的尝试:我不知道如何添加组变量“type”
geom_vline(aes(xintercept = mean(diff), ), color="black") +
geom_vline(aes(xintercept = median(diff), ), color="red")
Run Code Online (Sandbox Code Playgroud)