【发布时间】:2022-02-12 00:25:18
【问题描述】:
我希望 - 对于每个 id (cpf) - 以月为单位计算前一行的hire_date 和 sep_date 之间的差异。例如,我想获取与订单 1 关联的租用日期和与订单 2 关联的 sep_date 之间的差异(对于具有两个以上订单值的 id 也是如此)。
并非所有观察都只有两个阶值。有些人可能有更多。我怎样才能编写一个代码来解决这个问题?在这种情况下,一个 id 有两行以上。所以我还需要做出不止一个改变。
我总是希望在给定的租用日期(例如订单 2)和之前的 sep_Date(订单 1)之间有所不同,依此类推。多于两行:hire_date (order 3) - sep_date (order 2);雇用日期(订单 2) - sep_date(订单 1)...
structure(list(cpf = c(234L, 234L, 245L, 245L, 245L, 555L, 555L
), hire_date = c("10-11-29", "13-7-29", "11-10-19", "13-3-20",
"13-5-20", "10-02-18", "13-11-21"), sep_date = c("13-4-18", "13-8-29",
"13-2-15", "13-4-20", NA, "13-10-20", NA), Order = c(1L, 2L,
1L, 2L, 3L, 1L, 2L)), class = "data.frame", row.names = c(NA,
-7L))
cpf hire_date sep_date Order
1 234 10-11-29 13-4-18 1
2 234 13-7-29 13-8-29 2
3 245 11-10-19 13-2-15 1
4 245 13-3-20 13-4-20 2
5 245 13-5-20 <NA> 3
6 555 10-02-18 13-10-20 1
7 555 13-11-21 <NA> 2
任何帮助将不胜感激!
【问题讨论】:
标签: r date sequence difference