diff --git a/coxph.R b/coxph.R index a6cb293..3ccf4fb 100644 --- a/coxph.R +++ b/coxph.R @@ -51,6 +51,46 @@ sma_coxph_univ <- function() { univ_results <- lapply(univ_models, sma_cox_res) res <- t(as.data.frame(univ_results, check.names = FALSE)) + cat("\nUnivariate coxph with multiple covariates:\n") + cat("##########################################\n\n") + print(as.data.frame(res)) + + cat("\nUnivariat coxph with multiple covariates (HR over 1):\n") + cat("#####################################################\n\n") + # Convert from factor to double then filter + resgt <- as.data.frame(res) + resgt$HR <- as.double(as.character(resgt$HR)) + resgt <- filter(resgt, HR > 1.0) + resgt$HR <- sprintf("%0.2f", resgt$HR) + print(resgt) + + cat("\nUnivariat coxph with multiple covariates (HR lower or 1):\n") + cat("#########################################################\n\n") + # Convert from factor to double then filter + resle <- as.data.frame(res) + resle$HR <- as.double(as.character(resle$HR)) + resle <- filter(resle, HR <= 1.0) + resle$HR <- sprintf("%0.2f", resle$HR) + print(resle) + + cat("\nCoxph model assumptions (check for non-significance)\n") + cat("###################################################\n\n") + coxzph <- lapply(univ_models, cox.zph) + print(coxzph) +} + +# +# Univariate Cox ph analysis with multiple covariates. +# +sma_coxph_univ_hr <- function() { + univ_formulas <- sapply(covariates, function(x) as.formula( + paste('Surv(time_at_risk, time_at_risk_status) ~ ', + x))) + univ_models <- lapply(univ_formulas, + function(x) {coxph(x, data = secmal)}) + univ_results <- lapply(univ_models, sma_cox_res) + res <- t(as.data.frame(univ_results, check.names = FALSE)) + print("Univariate coxph with multiple covariates:") print(as.data.frame(res)) }