【发布时间】:2021-07-17 11:39:56
【问题描述】:
我正在尝试为Self-Controlled Study 格式化数据。我在两个日期内有一段时间的学习:
cohort_start = as.Date("01/01/2015", "%d/%m/%Y")
cohort_end = as.Date("01/01/2020", "%d/%m/%Y")
我有不同时期接触药物的身份证:
id = c(rep(1,2),2)
start = as.Date(c("10/09/2015","22/04/2018", "08/06/2017"), "%d/%m/%Y" )
end = as.Date(c("31/01/2016","17/02/2019", "03/11/2018"), "%d/%m/%Y" )
exp = rep(1,3)
DT = data.table(id, start, end, exp)
DT
id start end exp
1: 1 2015-09-10 2016-01-31 1
2: 1 2018-04-22 2019-02-17 1
3: 2 2017-06-08 2018-11-03 1
如果 id 没有像期望的输出那样暴露于药物,我想根据间隔/期间添加观察结果:
id start end exp
1: 1 2015-01-01 2015-09-09 0
2: 1 2015-09-10 2016-01-31 1
3: 1 2016-02-01 2018-04-21 0
4: 1 2018-04-22 2019-02-17 1
5: 1 2019-02-18 2020-01-01 0
6: 2 2015-01-01 2018-06-07 0
7: 2 2017-06-08 2018-11-03 1
8: 2 2018-11-04 2020-01-01 0
我现在没有任何线索......
任何帮助都会得到认可,
提前谢谢你!
【问题讨论】:
-
所需输出的最后一行似乎在
start和exp中有拼写错误..
标签: r time data.table intervals