data source: “ArMorr DBP DNA 12 23 2015.xlsx”
## Variable DBP7.A DBP7.AG.G P.Value
## 1 Age 64.5 + 14.9 (1065) 61.2 + 15.7 (1210) <.001
## 2 Sex 613 / 1065 (57.6 %) 627 / 1210 (51.8 %) 0.007
## 3 Race2 920 / 1065 (86.4 %) 441 / 1210 (36.4 %) <.001
## 4 Ethnic 151 / 1065 (14.2 %) 136 / 1210 (11.2 %) 0.041
## 5 diabetes 481 / 1058 (45.5 %) 521 / 1207 (43.2 %) 0.291
## 6 catheter 666 / 985 (67.6 %) 717 / 1113 (64.4 %) 0.135
## 7 BMI 27.3 + 7.5 (1064) 28.1 + 8.2 (1210) 0.026
## 8 sbp14 141.1 + 22.4 (1052) 145.8 + 22.6 (1205) <.001
## 9 dbp14 71.6 + 13.1 (1052) 75.2 + 13.2 (1205) <.001
## 10 ca14 8.5 + 0.8 (1041) 8.4 + 0.9 (1195) 0.224
## 11 cr14 5.8 + 2.4 (1019) 6.8 + 3.0 (1179) <.001
## 12 alk14 98.5 + 73.6 (978) 98.5 + 64.2 (1128) 0.988
## 13 alb14 3.5 + 0.5 (1049) 3.5 + 0.5 (1202) 0.076
## 14 pth14 266.1 + 265.6 (822) 314.8 + 259.5 (949) <.001
## 15 phos14 4.7 + 1.6 (1045) 4.7 + 1.6 (1192) 0.879
## 16 wbc14 8.8 + 3.2 (1018) 8.4 + 3.0 (1179) 0.003
## 17 ferr14 300.5 + 369.2 (972) 325.0 + 344.0 (1130) 0.116
## 18 Ivvitd 684 / 1065 (64.2 %) 881 / 1210 (72.8 %) <.001
km_vd1 <- survfit(Surv(fu, Death)~group, data=subset(dat, Ivvitd==1))
ggkmTable(km_vd1, ystratalabs=c("A", "AG/G"), timeby=50, main="DBP 7: A vs. AG/G w/ IV-VitD")
km_vd0 <- survfit(Surv(fu, Death)~group, data=subset(dat, Ivvitd==0))
ggkmTable(km_vd0, ystratalabs=c("A", "AG/G"), timeby=50, main="DBP 7: A vs. AG/G w/o IV-VitD")
cox.fit <- coxph(Surv(fu, Death)~group*Ivvitd+Age+Race2+diabetes+pth14+ca14+phos14+alb14+catheter, dat)
summary(cox.fit)
## Call:
## coxph(formula = Surv(fu, Death) ~ group * Ivvitd + Age + Race2 +
## diabetes + pth14 + ca14 + phos14 + alb14 + catheter, data = dat)
##
## n= 1602, number of events= 224
## (691 observations deleted due to missingness)
##
## coef exp(coef) se(coef) z Pr(>|z|)
## group0 -0.3515929 0.7035665 0.1771459 -1.985 0.0472 *
## Ivvitd0 -0.2366649 0.7892557 0.2120665 -1.116 0.2644
## Age 0.0427557 1.0436828 0.0054147 7.896 2.89e-15 ***
## Race2NW 0.0361432 1.0368043 0.1678274 0.215 0.8295
## diabetes0 0.0146158 1.0147231 0.1372712 0.106 0.9152
## pth14 0.0002898 1.0002898 0.0002792 1.038 0.2993
## ca14 0.1480323 1.1595503 0.0939151 1.576 0.1150
## phos14 0.0265235 1.0268784 0.0457545 0.580 0.5621
## alb14 -0.8100373 0.4448415 0.1470286 -5.509 3.60e-08 ***
## catheter0 -0.2846848 0.7522513 0.1498894 -1.899 0.0575 .
## group0:Ivvitd0 0.4823540 1.6198831 0.2972213 1.623 0.1046
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## exp(coef) exp(-coef) lower .95 upper .95
## group0 0.7036 1.4213 0.4972 0.9956
## Ivvitd0 0.7893 1.2670 0.5208 1.1960
## Age 1.0437 0.9581 1.0327 1.0548
## Race2NW 1.0368 0.9645 0.7462 1.4406
## diabetes0 1.0147 0.9855 0.7754 1.3280
## pth14 1.0003 0.9997 0.9997 1.0008
## ca14 1.1596 0.8624 0.9646 1.3939
## phos14 1.0269 0.9738 0.9388 1.1232
## alb14 0.4448 2.2480 0.3335 0.5934
## catheter0 0.7523 1.3293 0.5608 1.0091
## group0:Ivvitd0 1.6199 0.6173 0.9047 2.9005
##
## Concordance= 0.707 (se = 0.019 )
## Rsquare= 0.071 (max possible= 0.87 )
## Likelihood ratio test= 117.9 on 11 df, p=0
## Wald test = 110.5 on 11 df, p=0
## Score (logrank) test = 112.2 on 11 df, p=0
logit.fit <- glm(Death~group*Ivvitd+Age+Race2+diabetes+pth14+ca14+phos14+alb14+catheter,
dat, family="binomial")
summary(logit.fit)
##
## Call:
## glm(formula = Death ~ group * Ivvitd + Age + Race2 + diabetes +
## pth14 + ca14 + phos14 + alb14 + catheter, family = "binomial",
## data = dat)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.3761 -0.5934 -0.4395 -0.2844 2.7241
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -3.1260089 0.9351379 -3.343 0.000829 ***
## group0 -0.3920266 0.1977122 -1.983 0.047388 *
## Ivvitd0 -0.2248636 0.2393305 -0.940 0.347447
## Age 0.0474725 0.0060647 7.828 4.97e-15 ***
## Race2NW 0.0380392 0.1865192 0.204 0.838398
## diabetes0 0.0246113 0.1536290 0.160 0.872724
## pth14 0.0003259 0.0003271 0.996 0.319015
## ca14 0.1508154 0.1031031 1.463 0.143532
## phos14 0.0308408 0.0514146 0.600 0.548609
## alb14 -0.9021983 0.1681614 -5.365 8.09e-08 ***
## catheter0 -0.3122469 0.1649014 -1.894 0.058287 .
## group0:Ivvitd0 0.4583801 0.3356088 1.366 0.171996
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 1296.5 on 1601 degrees of freedom
## Residual deviance: 1180.3 on 1590 degrees of freedom
## (691 observations deleted due to missingness)
## AIC: 1204.3
##
## Number of Fisher Scoring iterations: 5
m.out <- matchit(group~Age, data=na.exclude(subset(dat, select=c("Age","group", "MRN"))), method="nearest")
m.data1 <- match.data(m.out)
dat.m <- subset(dat, MRN %in% m.data1$MRN)
## Variable DBP7.A DBP7.AG.G P.Value
## 1 Age 64.5 + 14.9 (1065) 63.8 + 14.5 (1066) 0.238
## 2 Sex 613 / 1065 (57.6 %) 549 / 1066 (51.5 %) 0.006
## 3 Race2 920 / 1065 (86.4 %) 400 / 1066 (37.5 %) <.001
## 4 Ethnic 151 / 1065 (14.2 %) 118 / 1066 (11.1 %) 0.036
## 5 diabetes 481 / 1058 (45.5 %) 473 / 1063 (44.5 %) 0.686
## 6 catheter 666 / 985 (67.6 %) 626 / 978 (64.0 %) 0.102
## 7 BMI 27.3 + 7.5 (1064) 27.9 + 8.0 (1066) 0.107
## 8 sbp14 141.1 + 22.4 (1052) 145.5 + 23.0 (1061) <.001
## 9 dbp14 71.6 + 13.1 (1052) 74.2 + 13.2 (1061) <.001
## 10 ca14 8.5 + 0.8 (1041) 8.4 + 0.9 (1054) 0.351
## 11 cr14 5.8 + 2.4 (1019) 6.5 + 2.8 (1038) <.001
## 12 alk14 98.5 + 73.6 (978) 97.6 + 63.0 (1000) 0.778
## 13 alb14 3.5 + 0.5 (1049) 3.5 + 0.5 (1058) 0.117
## 14 pth14 266.1 + 265.6 (822) 308.2 + 255.6 (830) 0.001
## 15 phos14 4.7 + 1.6 (1045) 4.7 + 1.5 (1050) 0.313
## 16 wbc14 8.8 + 3.2 (1018) 8.4 + 3.0 (1038) 0.005
## 17 ferr14 300.5 + 369.2 (972) 326.6 + 342.4 (998) 0.104
## 18 Ivvitd 684 / 1065 (64.2 %) 773 / 1066 (72.5 %) <.001
km_vd1 <- survfit(Surv(fu, Death)~group, data=subset(dat.m, Ivvitd==1))
ggkmTable(km_vd1, ystratalabs=c("A", "AG/G"), timeby=50, main="DBP 7: A vs. AG/G w/ IV-VitD")
km_vd0 <- survfit(Surv(fu, Death)~group, data=subset(dat.m, Ivvitd==0))
ggkmTable(km_vd0, ystratalabs=c("A", "AG/G"), timeby=50, main="DBP 7: A vs. AG/G w/o IV-VitD")
cox.match.fit <- coxph(Surv(fu, Death)~group*Ivvitd +Age+Race2+diabetes+pth14+ca14+phos14+alb14+catheter, dat.m)
summary(cox.match.fit)
## Call:
## coxph(formula = Surv(fu, Death) ~ group * Ivvitd + Age + Race2 +
## diabetes + pth14 + ca14 + phos14 + alb14 + catheter, data = dat.m)
##
## n= 1496, number of events= 217
## (635 observations deleted due to missingness)
##
## coef exp(coef) se(coef) z Pr(>|z|)
## group0 -0.3508375 0.7040982 0.1797032 -1.952 0.0509 .
## Ivvitd0 -0.2387524 0.7876099 0.2122580 -1.125 0.2607
## Age 0.0435306 1.0444920 0.0057733 7.540 4.70e-14 ***
## Race2NW 0.0294662 1.0299046 0.1712257 0.172 0.8634
## diabetes0 0.0072697 1.0072961 0.1399232 0.052 0.9586
## pth14 0.0003269 1.0003270 0.0002797 1.169 0.2426
## ca14 0.1585802 1.1718459 0.0958676 1.654 0.0981 .
## phos14 0.0077155 1.0077453 0.0473591 0.163 0.8706
## alb14 -0.7793241 0.4587159 0.1502253 -5.188 2.13e-07 ***
## catheter0 -0.2681912 0.7647615 0.1517006 -1.768 0.0771 .
## group0:Ivvitd0 0.4400753 1.5528241 0.3043450 1.446 0.1482
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## exp(coef) exp(-coef) lower .95 upper .95
## group0 0.7041 1.4203 0.4951 1.0014
## Ivvitd0 0.7876 1.2697 0.5196 1.1939
## Age 1.0445 0.9574 1.0327 1.0564
## Race2NW 1.0299 0.9710 0.7363 1.4406
## diabetes0 1.0073 0.9928 0.7657 1.3251
## pth14 1.0003 0.9997 0.9998 1.0009
## ca14 1.1718 0.8534 0.9711 1.4141
## phos14 1.0077 0.9923 0.9184 1.1058
## alb14 0.4587 2.1800 0.3417 0.6158
## catheter0 0.7648 1.3076 0.5681 1.0296
## group0:Ivvitd0 1.5528 0.6440 0.8552 2.8196
##
## Concordance= 0.701 (se = 0.02 )
## Rsquare= 0.069 (max possible= 0.877 )
## Likelihood ratio test= 106.6 on 11 df, p=0
## Wald test = 99.79 on 11 df, p=2.22e-16
## Score (logrank) test = 101.5 on 11 df, p=1.11e-16
logit.match.fit <- glm(Death~group*Ivvitd+Age+Race2+diabetes+pth14+ca14+phos14+alb14+catheter,
dat.m, family="binomial")
summary(logit.match.fit)
##
## Call:
## glm(formula = Death ~ group * Ivvitd + Age + Race2 + diabetes +
## pth14 + ca14 + phos14 + alb14 + catheter, family = "binomial",
## data = dat.m)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.3496 -0.6062 -0.4505 -0.3000 2.7554
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -3.3416108 0.9663733 -3.458 0.000544 ***
## group0 -0.3941327 0.2009041 -1.962 0.049786 *
## Ivvitd0 -0.2292841 0.2397111 -0.957 0.338819
## Age 0.0485020 0.0064643 7.503 6.24e-14 ***
## Race2NW 0.0336756 0.1903740 0.177 0.859593
## diabetes0 0.0165451 0.1567360 0.106 0.915931
## pth14 0.0003774 0.0003312 1.139 0.254583
## ca14 0.1634226 0.1054700 1.549 0.121269
## phos14 0.0078592 0.0531312 0.148 0.882405
## alb14 -0.8638560 0.1715638 -5.035 4.77e-07 ***
## catheter0 -0.2941352 0.1672042 -1.759 0.078554 .
## group0:Ivvitd0 0.4056065 0.3437725 1.180 0.238052
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 1238.8 on 1495 degrees of freedom
## Residual deviance: 1133.7 on 1484 degrees of freedom
## (635 observations deleted due to missingness)
## AIC: 1157.7
##
## Number of Fisher Scoring iterations: 5
dat.age <- subset(dat, Age <= 80 & !is.na(Age))
## Variable DBP7.A DBP7.AG.G P.Value
## 1 Age 64.5 + 14.9 (1065) 63.8 + 14.5 (1066) 0.238
## 2 Sex 613 / 1065 (57.6 %) 549 / 1066 (51.5 %) 0.006
## 3 Race2 920 / 1065 (86.4 %) 400 / 1066 (37.5 %) <.001
## 4 Ethnic 151 / 1065 (14.2 %) 118 / 1066 (11.1 %) 0.036
## 5 diabetes 481 / 1058 (45.5 %) 473 / 1063 (44.5 %) 0.686
## 6 catheter 666 / 985 (67.6 %) 626 / 978 (64.0 %) 0.102
## 7 BMI 27.3 + 7.5 (1064) 27.9 + 8.0 (1066) 0.107
## 8 sbp14 141.1 + 22.4 (1052) 145.5 + 23.0 (1061) <.001
## 9 dbp14 71.6 + 13.1 (1052) 74.2 + 13.2 (1061) <.001
## 10 ca14 8.5 + 0.8 (1041) 8.4 + 0.9 (1054) 0.351
## 11 cr14 5.8 + 2.4 (1019) 6.5 + 2.8 (1038) <.001
## 12 alk14 98.5 + 73.6 (978) 97.6 + 63.0 (1000) 0.778
## 13 alb14 3.5 + 0.5 (1049) 3.5 + 0.5 (1058) 0.117
## 14 pth14 266.1 + 265.6 (822) 308.2 + 255.6 (830) 0.001
## 15 phos14 4.7 + 1.6 (1045) 4.7 + 1.5 (1050) 0.313
## 16 wbc14 8.8 + 3.2 (1018) 8.4 + 3.0 (1038) 0.005
## 17 ferr14 300.5 + 369.2 (972) 326.6 + 342.4 (998) 0.104
## 18 Ivvitd 684 / 1065 (64.2 %) 773 / 1066 (72.5 %) <.001
km_vd1 <- survfit(Surv(fu, Death)~group, data=subset(dat.age, Ivvitd==1))
ggkmTable(km_vd1, ystratalabs=c("A", "AG/G"), timeby=50, main="DBP 7: A vs. AG/G w/ IV-VitD")
km_vd0 <- survfit(Surv(fu, Death)~group, data=subset(dat.age, Ivvitd==0))
ggkmTable(km_vd0, ystratalabs=c("A", "AG/G"), timeby=50, main="DBP 7: A vs. AG/G w/o IV-VitD")
cox.age.fit <- coxph(Surv(fu, Death)~group*Ivvitd+Age+Race2+diabetes+pth14+ca14+phos14+alb14+catheter, dat.age)
summary(cox.age.fit)
## Call:
## coxph(formula = Surv(fu, Death) ~ group * Ivvitd + Age + Race2 +
## diabetes + pth14 + ca14 + phos14 + alb14 + catheter, data = dat.age)
##
## n= 1387, number of events= 164
## (589 observations deleted due to missingness)
##
## coef exp(coef) se(coef) z Pr(>|z|)
## group0 -0.5204377 0.5942604 0.2104122 -2.473 0.0134 *
## Ivvitd0 -0.1815385 0.8339861 0.2420335 -0.750 0.4532
## Age 0.0453419 1.0463856 0.0072040 6.294 3.09e-10 ***
## Race2NW 0.1154336 1.1223599 0.1939430 0.595 0.5517
## diabetes0 0.1930037 1.2128873 0.1593097 1.211 0.2257
## pth14 0.0004095 1.0004096 0.0003144 1.303 0.1927
## ca14 0.2160911 1.2412154 0.1053052 2.052 0.0402 *
## phos14 0.0676704 1.0700126 0.0538971 1.256 0.2093
## alb14 -1.0424224 0.3525995 0.1715833 -6.075 1.24e-09 ***
## catheter0 -0.2913284 0.7472702 0.1738437 -1.676 0.0938 .
## group0:Ivvitd0 0.5079809 1.6619322 0.3479720 1.460 0.1443
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## exp(coef) exp(-coef) lower .95 upper .95
## group0 0.5943 1.6828 0.3934 0.8976
## Ivvitd0 0.8340 1.1991 0.5190 1.3402
## Age 1.0464 0.9557 1.0317 1.0613
## Race2NW 1.1224 0.8910 0.7674 1.6414
## diabetes0 1.2129 0.8245 0.8876 1.6574
## pth14 1.0004 0.9996 0.9998 1.0010
## ca14 1.2412 0.8057 1.0097 1.5257
## phos14 1.0700 0.9346 0.9627 1.1892
## alb14 0.3526 2.8361 0.2519 0.4936
## catheter0 0.7473 1.3382 0.5315 1.0506
## group0:Ivvitd0 1.6619 0.6017 0.8403 3.2871
##
## Concordance= 0.699 (se = 0.023 )
## Rsquare= 0.061 (max possible= 0.817 )
## Likelihood ratio test= 87.33 on 11 df, p=5.54e-14
## Wald test = 80.13 on 11 df, p=1.39e-12
## Score (logrank) test = 81.64 on 11 df, p=7.111e-13
logit.age.fit <- glm(Death~group*Ivvitd+Age+Race2+diabetes+pth14+ca14+phos14+alb14+catheter,
dat.age, family="binomial")
summary(logit.age.fit)
##
## Call:
## glm(formula = Death ~ group * Ivvitd + Age + Race2 + diabetes +
## pth14 + ca14 + phos14 + alb14 + catheter, family = "binomial",
## data = dat.age)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.2643 -0.5534 -0.4142 -0.2758 2.7936
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -3.3673316 1.0557562 -3.189 0.00143 **
## group0 -0.5444511 0.2307031 -2.360 0.01828 *
## Ivvitd0 -0.1297259 0.2682250 -0.484 0.62864
## Age 0.0482105 0.0078067 6.176 6.59e-10 ***
## Race2NW 0.1215431 0.2129111 0.571 0.56809
## diabetes0 0.1803949 0.1754424 1.028 0.30384
## pth14 0.0004735 0.0003624 1.306 0.19147
## ca14 0.2200422 0.1152602 1.909 0.05625 .
## phos14 0.0644830 0.0578398 1.115 0.26491
## alb14 -1.1003557 0.1919241 -5.733 9.85e-09 ***
## catheter0 -0.2970883 0.1885720 -1.575 0.11515
## group0:Ivvitd0 0.4074076 0.3856602 1.056 0.29079
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 1008.09 on 1386 degrees of freedom
## Residual deviance: 924.15 on 1375 degrees of freedom
## (589 observations deleted due to missingness)
## AIC: 948.15
##
## Number of Fisher Scoring iterations: 5