试图计算日期差异,但不包括周末-R-studio

问题描述 投票:0回答:1
IT_tickets[,"ticket_age"] <- NA
{R aging_count for Tasks}
IT_tickets$ticket_age[c(all_tasks)] <- difftime(IT_tickets$closed_at_date[c(all_tasks)], IT_tickets$sys_created_date[c(all_tasks)], units = "days")

我在数据集IT_tickets中有一个称为“票证年龄”的列,用于计算创建和关闭票证的天数差异。如何重新编码,以便将周末从天数差异中排除。

类似于NETWORK days功能在Excel中的工作方式。

r days weekend bizdays
1个回答
0
投票

如果您不必包括假期,则可以执行此操作

IT_tickets$ticket_age[c(all_tasks)] <- sum(!weekdays(seq(IT_tickets$sys_created_date[c(all_tasks)],
                                                                IT_tickets$closed_at_date[c(all_tasks)], 
                                                                "days")) %in% c("Saturday", "Sunday")) - 1 

如果要在计数中包括开始日期,则可以删除1的减法。

另一种方式:

IT_tickets$ticket_age[c(all_tasks)] <- (IT_tickets$ticket_age[c(all_tasks)]%/%7) * 5 + IT_tickets$ticket_age[c(all_tasks)]%%7
© www.soinside.com 2019 - 2024. All rights reserved.