90 days survival

death only

coxph(Surv(death_in_90days_time,death_in_90days_status) ~ repsonse_cat, data = master)%>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.39 0.22, 0.69 0.001
1 HR = Hazard Ratio, CI = Confidence Interval

death only multivariate

coxph(Surv(death_in_90days_time,death_in_90days_status) ~ repsonse_cat+age_admission+sex+White+hispanic_race+etiology_cirrhosis+MELD_Na_baseline+site, data = master)%>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.30 0.16, 0.56 <0.001
age_admission 1.02 0.99, 1.05 0.15
sex
    1
    2 1.18 0.67, 2.10 0.6
White
    0
    1 1.72 0.69, 4.27 0.2
hispanic_race
    0
    1 0.78 0.26, 2.35 0.7
etiology_cirrhosis
    Alcohol
    HCV 1.04 0.21, 5.23 >0.9
    Multifactorial 1.66 0.60, 4.60 0.3
    NASH 1.33 0.59, 2.98 0.5
    Other 2.50 1.08, 5.81 0.033
MELD_Na_baseline 1.02 0.98, 1.07 0.3
site
    baylor
    indiana 5.82 0.70, 48.0 0.10
    jacksonville 1.07 0.10, 10.9 >0.9
    kentukey 2.60 0.22, 31.2 0.5
    MCW 9.35 1.09, 80.2 0.042
    mgh 3.48 0.40, 30.3 0.3
    michigan 4.12 0.45, 38.0 0.2
    oschner 4.51 0.39, 52.2 0.2
    rochester 2.35 0.28, 19.5 0.4
    usc 2.30 0.24, 21.5 0.5
    yale 8.27 0.82, 83.2 0.073
1 HR = Hazard Ratio, CI = Confidence Interval

death or transplant

coxph(Surv(time_90days,status_90days!=0) ~ repsonse_cat, data = master)%>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.30 0.22, 0.41 <0.001
1 HR = Hazard Ratio, CI = Confidence Interval

death or transplant multivariate

coxph(Surv(time_90days,status_90days!=0) ~ repsonse_cat+age_admission+sex+White+hispanic_race+etiology_cirrhosis+MELD_Na_baseline+site, data = master)%>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.35 0.25, 0.50 <0.001
age_admission 1.00 0.98, 1.01 0.8
sex
    1
    2 1.00 0.72, 1.38 >0.9
White
    0
    1 0.92 0.59, 1.43 0.7
hispanic_race
    0
    1 0.75 0.45, 1.26 0.3
etiology_cirrhosis
    Alcohol
    HCV 0.80 0.34, 1.91 0.6
    Multifactorial 1.39 0.78, 2.47 0.3
    NASH 1.66 1.05, 2.63 0.031
    Other 1.74 1.08, 2.80 0.023
MELD_Na_baseline 1.07 1.04, 1.10 <0.001
site
    baylor
    indiana 2.90 0.99, 8.50 0.053
    jacksonville 5.22 1.75, 15.6 0.003
    kentukey 2.04 0.59, 7.03 0.3
    MCW 2.04 0.65, 6.42 0.2
    mgh 1.55 0.51, 4.71 0.4
    michigan 1.66 0.49, 5.60 0.4
    oschner 1.08 0.24, 4.94 >0.9
    rochester 1.67 0.57, 4.90 0.3
    usc 6.71 2.21, 20.3 <0.001
    yale 2.74 0.73, 10.3 0.14
1 HR = Hazard Ratio, CI = Confidence Interval

Fine and Gray event: death competing risk: liver transplant

test <- master
test$status_90days <- as.factor(test$status_90days)
tidycmprsk::crr(Surv(time_90days,status_90days) ~ repsonse_cat,failcode=1,cencode=0, data = test) %>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.42 0.24, 0.74 0.003
1 HR = Hazard Ratio, CI = Confidence Interval

Fine and Gray event: death competing risk: liver transplant multivariate

test <- master
test$status_90days <- as.factor(test$status_90days)
tidycmprsk::crr(Surv(time_90days,status_90days) ~ repsonse_cat+age_admission+sex+White+hispanic_race+etiology_cirrhosis+MELD_Na_baseline+site,failcode=1,cencode=0, data = test) %>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.34 0.18, 0.65 0.001
age_admission 1.03 0.99, 1.07 0.2
sex
    1
    2 1.03 0.57, 1.89 >0.9
White
    0
    1 1.67 0.62, 4.47 0.3
hispanic_race
    0
    1 0.78 0.22, 2.76 0.7
etiology_cirrhosis
    Alcohol
    HCV 1.04 0.16, 6.87 >0.9
    Multifactorial 1.33 0.50, 3.54 0.6
    NASH 1.23 0.54, 2.79 0.6
    Other 2.47 1.10, 5.53 0.028
MELD_Na_baseline 1.03 0.97, 1.09 0.4
site
    baylor
    indiana 4.28 0.42, 43.8 0.2
    jacksonville 1.04 0.08, 13.9 >0.9
    kentukey 2.28 0.14, 37.1 0.6
    MCW 8.77 0.84, 91.5 0.069
    mgh 3.33 0.29, 38.1 0.3
    michigan 4.12 0.38, 45.0 0.3
    oschner 4.21 0.31, 57.9 0.3
    rochester 2.34 0.24, 22.6 0.5
    usc 2.11 0.17, 26.8 0.6
    yale 8.15 0.74, 90.3 0.087
1 HR = Hazard Ratio, CI = Confidence Interval

Fine and Gray event: liver transplant competing risk: death

tidycmprsk::crr(Surv(time_90days,status_90days) ~ repsonse_cat,failcode=2,cencode=0, data = test) %>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.38 0.26, 0.55 <0.001
1 HR = Hazard Ratio, CI = Confidence Interval

Fine and Gray event: liver transplant competing risk: death

tidycmprsk::crr(Surv(time_90days,status_90days) ~ repsonse_cat+age_admission+sex+White+hispanic_race+etiology_cirrhosis+MELD_Na_baseline+site,failcode=2,cencode=0, data = test) %>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.55 0.37, 0.84 0.005
age_admission 1.00 0.98, 1.01 0.6
sex
    1
    2 0.83 0.56, 1.24 0.4
White
    0
    1 0.81 0.49, 1.34 0.4
hispanic_race
    0
    1 1.00 0.63, 1.59 >0.9
etiology_cirrhosis
    Alcohol
    HCV 0.67 0.27, 1.66 0.4
    Multifactorial 1.42 0.76, 2.68 0.3
    NASH 1.41 0.84, 2.36 0.2
    Other 1.05 0.59, 1.85 0.9
MELD_Na_baseline 1.06 1.03, 1.09 <0.001
site
    baylor
    indiana 1.95 0.56, 6.80 0.3
    jacksonville 4.63 1.32, 16.2 0.016
    kentukey 1.83 0.45, 7.49 0.4
    MCW 0.95 0.23, 3.87 >0.9
    mgh 1.11 0.31, 3.97 0.9
    michigan 1.03 0.23, 4.69 >0.9
    oschner 0.41 0.04, 3.71 0.4
    rochester 1.35 0.38, 4.78 0.6
    usc 5.05 1.41, 18.1 0.013
    yale 1.14 0.20, 6.63 0.9
1 HR = Hazard Ratio, CI = Confidence Interval

death only vasoconstrictor

coxph(Surv(death_in_90days_time,death_in_90days_status) ~ repsonse_cat, data = master_vasoconstrictor)%>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.41 0.21, 0.79 0.008
1 HR = Hazard Ratio, CI = Confidence Interval

death only vasoconstrictor multivariate

coxph(Surv(death_in_90days_time,death_in_90days_status) ~ repsonse_cat+age_admission+sex+White+hispanic_race+etiology_cirrhosis+MELD_Na_baseline+site, data = master_vasoconstrictor)%>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.25 0.12, 0.52 <0.001
age_admission 1.02 0.99, 1.05 0.3
sex
    1
    2 1.22 0.62, 2.41 0.6
White
    0
    1 1.78 0.60, 5.26 0.3
hispanic_race
    0
    1 0.70 0.22, 2.21 0.5
etiology_cirrhosis
    Alcohol
    HCV 0.85 0.14, 5.01 0.9
    Multifactorial 1.81 0.61, 5.40 0.3
    NASH 1.28 0.47, 3.45 0.6
    Other 2.67 0.93, 7.66 0.068
MELD_Na_baseline 0.97 0.91, 1.03 0.3
site
    baylor
    indiana 1.81 0.21, 15.6 0.6
    jacksonville 0.26 0.02, 3.34 0.3
    kentukey 1.44 0.12, 16.9 0.8
    MCW 3.24 0.35, 29.8 0.3
    mgh 1.30 0.15, 11.6 0.8
    michigan 0.62 0.04, 10.7 0.7
    oschner 1.08 0.09, 13.5 >0.9
    rochester 1.08 0.12, 9.74 >0.9
    usc 0.65 0.06, 6.88 0.7
    yale 2.47 0.22, 28.0 0.5
1 HR = Hazard Ratio, CI = Confidence Interval

death or transplant vasoconstrictor

coxph(Surv(time_90days,status_90days!=0) ~ repsonse_cat, data = master_vasoconstrictor)%>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.23 0.15, 0.35 <0.001
1 HR = Hazard Ratio, CI = Confidence Interval

death or transplant vasoconstrictor multivariate

coxph(Surv(time_90days,status_90days!=0) ~ repsonse_cat+age_admission+sex+White+hispanic_race+etiology_cirrhosis+MELD_Na_baseline+site, data = master_vasoconstrictor)%>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.23 0.14, 0.36 <0.001
age_admission 1.00 0.98, 1.02 >0.9
sex
    1
    2 0.86 0.57, 1.30 0.5
White
    0
    1 0.89 0.52, 1.51 0.7
hispanic_race
    0
    1 0.66 0.36, 1.18 0.2
etiology_cirrhosis
    Alcohol
    HCV 0.64 0.23, 1.73 0.4
    Multifactorial 1.28 0.63, 2.59 0.5
    NASH 1.43 0.80, 2.55 0.2
    Other 1.83 1.01, 3.33 0.046
MELD_Na_baseline 1.02 0.98, 1.06 0.3
site
    baylor
    indiana 2.11 0.46, 9.65 0.3
    jacksonville 4.61 0.99, 21.5 0.052
    kentukey 2.42 0.45, 13.1 0.3
    MCW 1.40 0.29, 6.68 0.7
    mgh 2.17 0.48, 9.83 0.3
    michigan 1.32 0.21, 8.16 0.8
    oschner 0.69 0.09, 5.16 0.7
    rochester 1.40 0.30, 6.44 0.7
    usc 6.28 1.35, 29.2 0.019
    yale 1.73 0.29, 10.4 0.6
1 HR = Hazard Ratio, CI = Confidence Interval

Fine and Gray event: death competing risk: liver transplant vasoconstrictor

test_vasco <- master_vasoconstrictor
test_vasco$status_90days <- as.factor(test_vasco$status_90days)
tidycmprsk::crr(Surv(time_90days,status_90days) ~ repsonse_cat,failcode=1,cencode=0, data = test_vasco) %>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.44 0.23, 0.86 0.016
1 HR = Hazard Ratio, CI = Confidence Interval

Fine and Gray event: death competing risk: liver transplant vasoconstrictor multivariate

tidycmprsk::crr(Surv(time_90days,status_90days) ~ repsonse_cat+age_admission+sex+White+hispanic_race+etiology_cirrhosis+MELD_Na_baseline+site,failcode=1,cencode=0, data = test_vasco) %>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.28 0.13, 0.60 <0.001
age_admission 1.02 0.98, 1.07 0.3
sex
    1
    2 1.03 0.51, 2.08 >0.9
White
    0
    1 1.67 0.51, 5.48 0.4
hispanic_race
    0
    1 0.73 0.20, 2.59 0.6
etiology_cirrhosis
    Alcohol
    HCV 0.85 0.10, 7.27 0.9
    Multifactorial 1.42 0.52, 3.88 0.5
    NASH 1.17 0.40, 3.40 0.8
    Other 2.57 0.93, 7.07 0.068
MELD_Na_baseline 0.98 0.90, 1.06 0.5
site
    baylor
    indiana 1.29 0.13, 12.5 0.8
    jacksonville 0.26 0.01, 5.13 0.4
    kentukey 1.28 0.09, 17.5 0.9
    MCW 2.97 0.31, 28.8 0.4
    mgh 1.26 0.12, 13.4 0.9
    michigan 0.65 0.03, 13.3 0.8
    oschner 1.05 0.08, 14.6 >0.9
    rochester 1.07 0.10, 11.4 >0.9
    usc 0.58 0.04, 8.38 0.7
    yale 2.50 0.27, 22.8 0.4
1 HR = Hazard Ratio, CI = Confidence Interval

Fine and Gray event: liver transplant competing risk: death vasoconstrictor

tidycmprsk::crr(Surv(time_90days,status_90days) ~ repsonse_cat,failcode=2,cencode=0, data = test_vasco) %>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.33 0.20, 0.54 <0.001
1 HR = Hazard Ratio, CI = Confidence Interval

Fine and Gray event: liver transplant competing risk: death vasoconstrictor multivariate

tidycmprsk::crr(Surv(time_90days,status_90days) ~ repsonse_cat+age_admission+sex+White+hispanic_race+etiology_cirrhosis+MELD_Na_baseline+site,failcode=2,cencode=0, data = test_vasco) %>% tbl_regression(exp = TRUE)
Characteristic HR1 95% CI1 p-value
repsonse_cat
    no response
    overall response 0.49 0.28, 0.86 0.012
age_admission 1.00 0.98, 1.02 0.8
sex
    1
    2 0.69 0.40, 1.19 0.2
White
    0
    1 0.85 0.49, 1.48 0.6
hispanic_race
    0
    1 1.07 0.58, 1.97 0.8
etiology_cirrhosis
    Alcohol
    HCV 0.68 0.26, 1.78 0.4
    Multifactorial 1.42 0.60, 3.37 0.4
    NASH 1.29 0.70, 2.35 0.4
    Other 0.99 0.51, 1.93 >0.9
MELD_Na_baseline 1.05 1.00, 1.09 0.029
site
    baylor
    indiana 1.71 0.17, 17.3 0.7
    jacksonville 5.31 0.51, 55.3 0.2
    kentukey 1.80 0.14, 22.8 0.7
    MCW 0.91 0.08, 10.1 >0.9
    mgh 2.01 0.20, 20.7 0.6
    michigan 1.74 0.13, 24.2 0.7
    oschner 0.00 0.00, 0.00 <0.001
    rochester 1.33 0.12, 14.2 0.8
    usc 5.74 0.54, 61.3 0.2
    yale 1.53 0.08, 29.9 0.8
1 HR = Hazard Ratio, CI = Confidence Interval

#4/13/2023 # create new variables for two cohorts

master <- master %>% mutate(liver_transplant_after_discharge=ifelse((days_liver-los)<=90,"<=90 days",">90 days")) %>% 
                    mutate(meld_cat=case_when(
                      MELD_Na_baseline>=25 ~ "MELD 25 or greater",
                      MELD_Na_baseline>=19 & MELD_Na_baseline<=24 ~ "MELD 19-24",
                      MELD_Na_baseline <=18 ~ "MELD 18 or less"
                    )) %>% 
                     mutate(trasnplant_before_after_discharge=case_when(
                      days_liver<los ~ "days_liver<los",
                      days_liver>=los ~ "days_liver>=los"
                     )) %>% 
                     mutate(days_from_discharge_to_transplant = days_liver-los)


master_vasoconstrictor <- master_vasoconstrictor%>% mutate(liver_transplant_after_discharge=ifelse((days_liver-los)<=90,"<=90 days",">90 days")) %>% 
                    mutate(meld_cat=case_when(
                      MELD_Na_baseline>=25 ~ "MELD 25 or greater",
                      MELD_Na_baseline>=19 & MELD_Na_baseline<=24 ~ "MELD 19-24",
                      MELD_Na_baseline <=18 ~ "MELD 18 or less"
                    )) %>% 
                     mutate(trasnplant_before_after_discharge=case_when(
                      days_liver<los ~ "days_liver<los",
                      days_liver>=los ~ "days_liver>=los"
                     )) %>% 
                     mutate(days_from_discharge_to_transplant = days_liver-los)

2) Get numbers for those transplanted after discharge

table(master$liver_transplant_after_discharge)
## 
## <=90 days  >90 days 
##       123        45
table(master_vasoconstrictor$liver_transplant_after_discharge)
## 
## <=90 days  >90 days 
##        79        19

3) Obtain mean number of readmissions [SD] within 90 days for overall response, no response and overall groups, for patients who survived to discharge and excluding those transplanted within 90 days

subgroup <- master %>% filter(!days_liver<90,!death_discharge==1)

subgroup$readmissions <- as.numeric(subgroup$readmissions)
# Use the aggregate function to calculate the mean and standard deviation by group
aggregate(readmissions ~ repsonse_cat, data = subgroup, FUN = function(x) c(mean = mean(x), sd = sd(x)))
##       repsonse_cat readmissions.mean readmissions.sd
## 1      no response          3.214286        2.547354
## 2 overall response          2.406250        1.477997
mean(subgroup$readmissions)
## [1] 2.652174
sd(subgroup$readmissions)
## [1] 1.876372

5) Breakdown of MELD-Na distribution for overall response, no response and overall groups for raw outcomes of 90-day survival, 90-day transplant free survival, number of transplants (during admission and after discharge), median days from discharge to transplant

#6) MELD breakdown analysis
## status_90days 0:censored 1:death 2:transplant

master_MELD_25 <- master %>% filter(meld_cat=="MELD 25 or greater")
master_MELD_19_24<- master %>% filter(meld_cat=="MELD 19-24")
master_MELD_18<- master %>% filter(meld_cat=="MELD 18 or less")

table_MELD_breakdown_ge_25 <- CreateTableOne(vars = c("status_90days"),strata = "repsonse_cat",includeNA = F,addOverall = TRUE,data = master_MELD_25, factorVars = c("status_90days")) 

table_MELD_breakdown_ge_25_csv <- print(table_MELD_breakdown_ge_25,showAllLevels = F,missing = T,quote = FALSE, noSpaces = TRUE, printToggle = FALSE)

write.csv(table_MELD_breakdown_ge_25_csv , file = "table_MELD_breakdown_ge_25.csv")



table_MELD_breakdown_19_24 <- CreateTableOne(vars = c("status_90days"),strata = "repsonse_cat",includeNA = F,addOverall = TRUE,data = master_MELD_19_24, factorVars = c("status_90days")) 

table_MELD_breakdown_19_24_csv <- print(table_MELD_breakdown_19_24,showAllLevels = F,missing = T,quote = FALSE, noSpaces = TRUE, printToggle = FALSE)

write.csv(table_MELD_breakdown_19_24_csv , file = "table_MELD_breakdown_19_24.csv")



table_MELD_breakdown_18 <- CreateTableOne(vars = c("status_90days"),strata = "repsonse_cat",includeNA = F,addOverall = TRUE,data = master_MELD_18, factorVars = c("status_90days")) 

table_MELD_breakdown_18_csv <- print(table_MELD_breakdown_18,showAllLevels = F,missing = T,quote = FALSE, noSpaces = TRUE, printToggle = FALSE)

write.csv(table_MELD_breakdown_18_csv , file = "table_MELD_breakdown_18.csv")

#6) MELD breakdown analysis
## status_90days 0:censored 1:death 2:transplant

master_MELD_25_vasoconstrictor <- master_vasoconstrictor %>% filter(meld_cat=="MELD 25 or greater")
master_MELD_19_24_vasoconstrictor<- master_vasoconstrictor %>% filter(meld_cat=="MELD 19-24")
master_MELD_18_vasoconstrictor<- master_vasoconstrictor %>% filter(meld_cat=="MELD 18 or less")

table_MELD_breakdown_ge_25_vaso <- CreateTableOne(vars = c("status_90days"),strata = "repsonse_cat",includeNA = F,addOverall = TRUE,data = master_MELD_25_vasoconstrictor, factorVars = c("status_90days")) 

table_MELD_breakdown_ge_25_vaso_csv <- print(table_MELD_breakdown_ge_25_vaso,showAllLevels = F,missing = T,quote = FALSE, noSpaces = TRUE, printToggle = FALSE)

write.csv(table_MELD_breakdown_ge_25_vaso_csv , file = "table_MELD_breakdown_ge_25_vaso_.csv")



table_MELD_breakdown_19_24_vaso <- CreateTableOne(vars = c("status_90days"),strata = "repsonse_cat",includeNA = F,addOverall = TRUE,data = master_MELD_19_24_vasoconstrictor, factorVars = c("status_90days")) 

table_MELD_breakdown_19_24_vaso_csv <- print(table_MELD_breakdown_19_24_vaso,showAllLevels = F,missing = T,quote = FALSE, noSpaces = TRUE, printToggle = FALSE,exact = "status_90days")

write.csv(table_MELD_breakdown_19_24_vaso_csv , file = "table_MELD_breakdown_19_24_vaso.csv")



table_MELD_breakdown_18_vaso <- CreateTableOne(vars = c("status_90days"),strata = "repsonse_cat",includeNA = F,addOverall = TRUE,data = master_MELD_18_vasoconstrictor, factorVars = c("status_90days")) 

table_MELD_breakdown_18_vaso_csv <- print(table_MELD_breakdown_18_vaso,showAllLevels = F,missing = T,quote = FALSE, noSpaces = TRUE, printToggle = FALSE,exact = "status_90days")

write.csv(table_MELD_breakdown_18_vaso_csv , file = "table_MELD_breakdown_18_vaso.csv")