Как можно сопоставить 3 группы лечения с показателем склонности к регрессии Кокса? - PullRequest
0 голосов
/ 19 апреля 2020

Я начал использовать R не так давно go, мои извинения, если мне потребуется некоторое время, чтобы понять ваши ответы. Я пытаюсь подбирать пациентов по показателю склонности. У меня есть 3 группы "лечения" - группа AKI, группа AKR и группа без почечной дисфункции, эта переменная, названная "kidney_groups" в моих данных. Я хочу оценить, предсказывает ли эта переменная смерть в течение года по регрессии Кокса (с еще двумя переменными, которые я не хочу сопоставлять). Я хочу рассчитать оценку склонности каждого пациента по переменным STSscoremortality и GFR_mdrd_epi. Я использовал 2 разных кода для расчета показателя склонности, и я не уверен, что мне нужно делать дальше, чтобы я мог сопоставить своих пациентов и использовать эти сопоставленные данные в регрессии Кокса. первый код, который я использовал:

#######makepropensity score data###############

## Function to add generalized PS to dataset
AddGPS <- function(data, formula, family = multinomial(), psPrefix = "PS_") {

## Fit multinomial logistic regression
  resVglm <- vglm(formula = formula, data = data, family = family)

 ## Calculate PS
  psData <- as.data.frame(predict(resVglm, type = "response"))
  names(psData) <- paste0(psPrefix, names(psData))
  cbind(data, psData)
}

 zTavi<-AddGPS(data = fTavi, # dataset
                   ## Propensity score model for multinomial regression
              formula = fTavi$kidney_groups ~ fTavi$GFR_mdrd_EPI+fTavi$STSscoremortality)

В этом коде я получил 3 новые переменные: PS_1, PS_2, PS_3 - показатель склонности для каждой группы лечения

Во втором коде я использовал Trimatch пакет:

 fTavi.tpsa <- trips(fTavi, fTavi$kidney_groups, formu)

 fTavi.matched.caliper <- trimatch(fTavi.tpsa, method=NULL)
 summary(unmatched(fTavi.matched.caliper))


 matched.out <- merge( fTavi.matched.caliper , fTavi$death1Y)

но из второго кода я получил странные данные с 11 050 строками (хотя мои исходные данные имеют только 1328 строк и только около 650 совпадающих данных):

dim (fTavi.matched.caliper) [1] 11050 7

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...