Calculate coxmodels for all rows of a given matrix. Supply optional covariates
cox.single.univariate <- function(exprmat
,pheno.df
,survtimename = "OS"
,surveventname = "OS_STAT"
,single.corr.formulastring = c("+rituximab+Version")
,single.corr.formulastring.name = "RituxVersion"){
# exprmat.numbercol <- cbind(1:nrow(exprmat), exprmat)
univariate.models <- apply(exprmat, 1, function(geneX){
single.cox(response = geneX
,pheno.df = pheno.df
,survtimename = survtimename
,surveventname = surveventname
,single.corr.formulastring = single.corr.formulastring
,single.corr.formulastring.name = single.corr.formulastring.name
,responsename = NA)
})
names(univariate.models) <- rownames(exprmat)
pval.per.gene <- sapply(univariate.models, function(coxModelX)summary(coxModelX)$coef[1, c(1, 5)])
pval.df <- tibble::tibble("Gene"=colnames(pval.per.gene)
, "pValue"=pval.per.gene[2, ]
, "pValBonferroni"=pval.per.gene[2, ]*length(pval.per.gene)
,"coef"=pval.per.gene[1, ])
}