#' Preprocess Data
#'
#' @param elist EList for preprocessing
#' @param batchcorrect logical, if batchcorrection should be applied (default: F)
#' @param batch factor, batch information
#'
#' @return a processed EList
#' @export
#'
preprocess <- function(elist, batchcorrect = F, batch) {
elist.avg <- elist.median(elist)
map <- new_annotation ## load map created with "unambigousArrayAnnot.R"
elist.avg$genes <- cbind(elist.avg$genes, map[match(x = elist.avg$genes$ProbeName, table = map$ProbeID), c("ProbeID", "ensembl_gene_id", "unique", "external_gene_name", "description", "hsapiens_homolog_associated_gene_name", "name_1006", "interpro_description", "gene_biotype", "phenotype_description")])
if (batchcorrect) {
batch <- batch
modcombat <- model.matrix(~factor(elist$targets$time_hpe) * factor(elist$targets$concentration_level), data = elist.avg$targets)
combat_edata <- sva::ComBat(dat = elist.avg$E, batch = batch, mod = modcombat, par.prior = TRUE, prior.plots = F)
elist.combat <- elist.avg
elist.combat$E <- combat_edata
return(elist.combat)
} else {
return(elist.avg)
}
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.