Изменяющиеся во времени ковариаты: форматирование для одной категориальной переменной с 3 уровнями - PullRequest
0 голосов
/ 21 апреля 2020

(Это отредактированная версия ранее закрытого вопроса)

У меня есть data.frame (сжатый до testdata ) нескольких демографических c переменных в дополнение к одной переменной с тремя уровнями для трех возможных сопутствующих заболеваний.

dput(testdata)
structure(list(age = c(31L, 48L, 19L, 23L, 24L, 24L, 40L, 22L, 
25L, 20L, 39L, 26L, 28L, 27L, 25L), gender = structure(c(2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("F", 
"M"), class = "factor"), race = structure(c(NA, NA, 1L, NA, 1L, 
NA, NA, NA, 2L, 1L, NA, 3L, NA, 1L, NA), .Label = c("C", "M", 
"N", "R", "Z"), class = "factor"), Time1 = c(NA, NA, NA, 319, 
NA, 133, NA, 121, NA, NA, 30, NA, NA, NA, NA), Time2 = c(NA, 
109, NA, NA, NA, NA, NA, NA, NA, NA, NA, 108, 52, NA, NA), Time3 = c(NA, 
73, NA, NA, 4, NA, NA, 121, NA, NA, 2, NA, NA, NA, NA), OutcomeTime = c(4380, 
199, 4380, 4380, 4380, 4380, 4380, 4380, 4380, 4380, 196, 4380, 
4380, 4380, 4380), CoMo1 = c(NA, NA, NA, 1, NA, 1, NA, 1, NA, 
NA, 1, NA, NA, NA, NA), CoMo2 = c(NA, 2, NA, NA, NA, NA, NA, 
NA, NA, NA, NA, 2, 2, NA, NA), CoMo3 = c(NA, 3, NA, NA, 3, NA, 
NA, 3, NA, NA, 3, NA, NA, NA, NA), Outcome = c(0, 1, 0, 0, 0, 
0, 0, 0, 0, 0, 1, 0, 0, 0, 0), ID = 1:15), class = "data.frame", row.names = 
c("1", 
"4", "6", "7", "8", "11", "14", "18", "19", "26", "27", "28", 
"30", "31", "38"))

Time1 , Time2 , Time3 - времена, когда у идентификатора была сопутствующая патология, CoMo1 CoMo2 , CoMo3 соответственно. Переменная Outcome определяет, произошла смерть или нет. OutcomeTime - это когда наступила смерть или если пациент следовал до конца исследования без смерти.

При попытке настроить это с помощью tmerge() у меня возникли некоторые трудности с командами (впервые делаю это!):

newdata<-tmerge(data1=testdata[,c(1:3,12)], data2=testdata, id=ID, 
tstop=OutcomeTime, tstart=0)
newdata<-tmerge(newdata, testdata, id=ID, Comorbid=event(OutcomeTime))
newdata<-tmerge(newdata, testdata, id=ID, Comorbid=event(Time1))
newdata<-tmerge(newdata, testdata, id=ID, Comorbid=event(Time2))
newdata<-tmerge(newdata, testdata, id=ID, Comorbid=event(Time3))
newdata<-tmerge(newdata,newdata, ID, enum=cumevent(tstart))

Я попробовал несколько передач с выше и я получаю не совсем то, что хочу:

1) Мне нужен столбец с указанием коморбидности, возникающей в интервале

2) Мне нужен столбец для переменной Outcome . В настоящее время, похоже, что для идентификаторов, имеющих сопутствующие заболевания, добавляется еще один временной интервал для Outcome , но он нигде не записывается. Это действительно должна быть собственная переменная.

3) Может кто-нибудь объяснить разницу между тем, когда использовать событие , cumevent , td c и cumtd c?

Спасибо!

...