【发布时间】:2018-07-26 08:12:14
【问题描述】:
大家好,我有这个问题,我正在计算日期之间的天数,前提如下:
- 状态A是基准日期,所有计算都必须以这个日期为参考(按ID分组)
- 对于状态 B、C、D,我必须选择较早的日期
- 我必须计算天数并显示在不同的列中
例如
用 R 生成表格
ColID = c(1, 1, 1, 1, 1, 2, 2, 2)
ColStatus = c("A", "B", "B", "C", "D", "A", "C", "C")
ColDate = c("01/01/2018","02/03/2018", "05/04/2018", "04/05/2018", "04/05/2018", "02/01/2018", "04/03/2018", "05/04/2018")
data.frame(ColID, ColStatus, ColDate)
我如何进行计算
For ColID = 1
Status A = 01/01/2018
Status B (I Have to select the older one) = 02/03/2018
Status C = 04/05/2018
Status D = 04/05/2018
ResultColB = 02/03/2018 - 01/01/2018 = 60
ResultColC = 04/05/2018 - 01/01/2018 = 123
ResultColD = 04/05/2018 - 01/01/2018 = 123
结果表(以天为单位)
用 R 生成表格
ColID = c(1,2)
ResultColStatusB = c(60,0)
ResultColStatusC = c(123,61)
data.frame(ColID, ResultColStatusB, ResultColStatusC, ResultColStatusB)
这个问题可以用 R、Python 或 SQL 解决,有什么建议我来解决这个问题?
【问题讨论】: