【发布时间】:2022-01-18 02:01:48
【问题描述】:
此问题与此处的问题类似 r collapse by year by ID
但是,我喜欢按 ID 和 State 折叠时间线,前提是它们的时间线之间的间隔是 31 天。如果间隔超过 31 天,则它们不会折叠,它们会从新行开始。例如,如果这是我的数据集
ID From To State
1 2004-04-05 2005-02-05 MD
1 2005-03-05 2005-03-05 MD
1 2005-04-05 2005-10-05 DC
1 2006-03-05 2006-10-05 DC
1 2006-11-05 2007-03-05 DC
1 2007-04-05 2007-06-05 MD
1 2008-03-05 2008-11-05 MD
1 2008-12-05 2010-08-05 MD
1 2010-09-05 2012-11-05 MD
2 2003-05-05 2004-08-05 OR
2 2004-09-05 2009-03-05 OR
2 2010-06-05 2010-08-05 AZ
2 2013-06-05 2015-06-05 AZ
折叠后的最终数据集如下所示
ID From To State
1 2004-04-05 2005-03-05 MD
1 2005-04-05 2005-10-05 DC
1 2006-04-05 2007-03-05 DC
1 2007-04-05 2007-06-05 MD
1 2008-03-05 2012-11-05 MD
2 2003-05-05 2009-03-05 OR
2 2010-06-05 2010-08-05 AZ
2 2013-06-05 2015-06-05 AZ
非常感谢您对此提出任何建议。
测试用例 2:
ID From To State
1 2003-09-05 2003-11-05 MD
1 2004-09-05 2007-05-05 TX
1 2007-06-05 2007-07-05 DC
1 2007-08-05 2009-07-05 DC
1 2011-11-05 2014-03-05 MD
1 2014-05-05 2017-06-05 MD
预期结果
ID From To State
1 2003-09-05 2003-11-05 MD
1 2004-09-05 2007-05-05 TX
1 2007-06-05 2009-07-05 DC
1 2011-11-05 2017-06-05 MD
【问题讨论】:
-
但是你为什么要折叠
2003-05-05 2004-08-05 OR和2004-09-05 2009-03-05 OR呢? 2004-8-5 和 2004-9-5 之间有 31 天。 -
@ekoam,很好,我已经更新了我的问题以反映 31 天而不是 30 天。感谢您了解这个。