reorderUPGMAtree: re-order UPGMA tree

View source: R/reorderUPGMAtree.R

reorderUPGMAtreeR Documentation

re-order UPGMA tree

Description

re-order the UPGMA tree by adjacent motif distance

Usage

reorderUPGMAtree(phylog, motifs, rcpostfix = "(RC)")

Arguments

phylog

an object of phylog

motifs

a list of objects of pfm

rcpostfix

the postfix for reverse complements

Value

an object of phylog

Author(s)

Jianhong Ou

Examples


  if(interactive() || Sys.getenv("USER")=="jianhongou"){
    library("MotifDb")
    matrix.fly <- query(MotifDb, "Dmelanogaster")
    motifs <- as.list(matrix.fly)
    motifs <- motifs[grepl("Dmelanogaster-FlyFactorSurvey-", names(motifs), fixed=TRUE)]
    names(motifs) <- gsub("Dmelanogaster_FlyFactorSurvey_", "", 
                gsub("_FBgn[0-9]+$", "", 
                  gsub("[^a-zA-Z0-9]","_", 
                     gsub("(_[0-9]+)+$", "", names(motifs)))))
    motifs <- motifs[unique(names(motifs))]
    pfms <- sample(motifs, 50)
    hc <- clusterMotifs(pfms)
    library(ade4)
    phylog <- ade4::hclust2phylog(hc)
    pfms <- mapply(pfms, names(pfms), FUN=function(.ele, .name){
                 new("pfm",mat=.ele, name=.name)})
    reorderUPGMAtree(phylog, pfms)
  }


jianhong/motifStack documentation built on Jan. 31, 2024, 5:03 a.m.