# Package library("PSAgraphics") # Creating logit-based stratification into 5 and 10 strata data("lindner") attach(lindner) lindner.log <- glm(abcix ~ stent + height + female + diabetic + acutemi + ejecfrac + ves1proc, data = lindner, family = binomial) ps <- lindner.log$fitted lindner.s5<-cut(ps, quantile(ps, seq(0,1,1/5)), include.lowest = TRUE, labels = FALSE) lindner.s10<-cut(ps, quantile(ps, seq(0,1,1/10)), include.lowest = TRUE, labels = FALSE) # Creating a recursively partitioned tree based stratification with six strata library("rpart") lindner.rpart <- rpart(abcix ~ stent + height + female + diabetic + acutemi + ejecfrac + ves1proc, data = lindner, method = "class") lindner.tree <- factor(lindner.rpart$where, labels = 1:6) # Assessing balance of a quantitative covariate box.psa(ejecfrac, abcix, lindner.s5, xlab = "Strata", ylab = "Covariate: ejecfrac", legend.xy = c(2,110), balance = FALSE) box.psa(ejecfrac, abcix, lindner.tree, xlab="Strata", ylab = "Covariate: ejecfrac", legend.xy = c(2,110), balance = TRUE) # Reference distributions for balance measures for a quantitative covariate bal.ms.psa(ejecfrac, abcix, lindner.s5, B = 1000, main = "Five Logit-Based Strata") bal.ms.psa(ejecfrac, abcix, lindner.s10, B = 1000, main = "Ten Logit-Based Strata") bal.ms.psa(ejecfrac, abcix, lindner.tree, B = 1000, main = "Six Tree-Based Strata") # Assessing balance of categorical covariates cat.psa(stent, abcix, lindner.s5, xlab = "Strata", ylab = "Proportion for 'stent'", catnames = c("No Stent", "Stent"), barnames = c("Standard PCI", "Abciximab"), rtmar = 2) cat.psa(stent, abcix, lindner.s10, xlab = "Strata", ylab = "Proportion for 'stent'", catnames = c("No Stent", "Stent"), barnames = c("Standard PCI", "Abciximab"), rtmar = 2.8) cat.psa(stent, abcix, lindner.tree, xlab = "Strata", ylab = "Proportion for 'stent'", catnames = c("No Stent", "Stent"), barnames = c("Standard PCI", "Abciximab"), rtmar = 2) cat.psa(ves1proc, abcix, lindner.s5, xlab = "Strata", ylab = "Proportion for 'ves1proc'", catnames = 0:5, barnames = c("Standard PCI", "Abciximab"), rtmar = 2, balance = TRUE, B = 1000) cat.psa(ves1proc, abcix, lindner.tree, xlab = "Strata", ylab = "Proportion for 'ves1proc'", catnames = 0:5, barnames = c("Standard PCI", "Abciximab"), rtmar = 2, balance = TRUE, B = 1000) # PSA assessment plots circ.psa(log(cardbill), abcix, lindner.s5, revc = TRUE, xlab = "Treatment with Abciximab", ylab = "Standard Treatment") circ.psa(log(cardbill), abcix, lindner.s10, revc = TRUE, ne =.1, sw = .15, inc =.17, labcex = .9, xlab = "Treatment with Abciximab", ylab = "Standard Treatment") circ.psa(log(cardbill), abcix, lindner.tree, ne =.15,sw = .3, rev = TRUE, xlab = "Treatment with Abciximab", ylab = "Standard Treatment") # Loess plot loess.psa(log(cardbill), abcix, ps, ylab = "Response: log(cardbill)")