【发布时间】:2017-06-22 15:46:38
【问题描述】:
我有一个这种格式的数据框
Account ID, Start Date, End Date
1 , 2016-01-01, 2016-02-01
1 , 2016-02-02, 2016-03-01
1 , 2016-03-01, 2016-04-01
2 , 2016-01-01, 2016-02-01
2 , 2016-03-02, 2016-03-20
2 , 2016-03-21, 2016-04-01
我希望生成的数据框看起来像。
Account ID, Start Date, End Date
1 , 2016-01-01, 2016-04-01
2 , 2016-01-01, 2016-02-01
2 , 2016-03-02, 2016-04-01
如果一个帐户的结束日期和后续开始日期之间的时间少于 7 天,它将合并为一个,并使用后一个记录的结束日期和前一个记录的开始日期。
我已经尝试使用 dplyr 对 Lead 和 Lag 进行分组,但这不适用于具有 3 条或更多记录的帐户。
在示例中,
帐户 ID 1 是一种可以通过按帐户 ID 分组来解决的情况,并且 max、min 可以工作
但帐户 ID 2 是这种情况下不起作用的情况。
非常感谢任何帮助。
【问题讨论】: