motifSignature: get signatures from motifs

View source: R/motifSignature.R

motifSignatureR Documentation

get signatures from motifs

Description

extract signatures from multiple motifs by distance calculated from STAMP

Usage

motifSignature(
  pfms,
  phylog,
  cutoffPval,
  groupDistance,
  rcpostfix = "(RC)",
  min.freq = 2,
  trim = 0.2,
  families = list(),
  sort = TRUE
)

Arguments

pfms

a list of objects of class pfm

phylog

an object of class phylog

cutoffPval

pvalue for motifs to merge.

groupDistance

maxmal distance of motifs in the same group

rcpostfix

postfix for reverse-complement motif names, default: (RC)

min.freq

signatures with frequency below min.freq will not be plotted

trim

minimal information content for each position of signature

families

for each family, the motif number in one signature should only count as 1

sort

sort the signatures by frequency or not.

Value

an Object of class motifSig

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)
    leaves <- names(phylog$leaves)
    pfms <- pfms[leaves]
    pfms <- mapply(pfms, names(pfms), FUN=function(.ele, .name){
                 new("pfm",mat=.ele, name=.name)})
    motifSig <- motifSignature(pfms, phylog, cutoffPval=0.0001)
  }


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