R/pStrata.R

Defines functions pStrata

Documented in pStrata

#' @title Compute Partial Strata Values
#' @description This function computes the partial \code{\link{TAI}} or \code{\link{TDI}}
#' values for all Phylostrata or Divergence Strata.
#' @param ExpressionSet a standard PhyloExpressionSet or DivergenceExpressionSet object.
#' @author Hajk-Georg Drost
#' @examples
#' 
#' data(PhyloExpressionSetExample)
#' 
#' # compute partial TAI values for each Phylostratum
#' partialStrata <- pStrata(PhyloExpressionSetExample)
#' 
#' # show that colSums of pStrata is equavalent to the TAI values
#' all.equal(colSums(partialStrata),TAI(PhyloExpressionSetExample))
#' 
#' # show that colSums of pStrata is equavalent to colSums of pMatrix(PhyloExpressionSetExample)
#' all.equal(colSums(partialStrata),colSums(pMatrix(PhyloExpressionSetExample)))
#' 
#' 
#' @export

pStrata <- function(ExpressionSet){
        
        is.ExpressionSet(ExpressionSet)
        AGE <- NULL
        
        df <- as.data.frame(cbind(unlist(dplyr::select(ExpressionSet, 1)), pMatrix(ExpressionSet)))
        colnames(df)[1] <- "AGE"
        pStrataDF <- dplyr::summarise_all(dplyr::group_by(df,AGE), list(sum))
        colnames(pStrataDF)[1] <- names(ExpressionSet)[1]
        res <- as.matrix(pStrataDF[ , 2:(ncol(ExpressionSet)-1)])
        rownames(res) <- names(table(ExpressionSet[ , 1]))
        
        return(res)
}
HajkD/myTAI documentation built on April 6, 2024, 7:47 p.m.