topGOdata-class {topGO} | R Documentation |
TODO: The node atributes are environments containing the genes/probes annotated to the respective node
If genes is a numeric vector than this should represent the gene's score. If it is factor it should discriminate the genes in interesting genes and the rest
TODO: it will be a good idea to replace the allGenes and allScore with an exprSet class. In this way we can use tests like global test, globalAncova.... – ALL variables sarting with . are just for internal class usage (private)
Objects can be created by calls of the form new("topGOdata", ontology, allGenes, geneSelectionFun, description, annotationFun, ...)
.
~~ describe objects here ~~
description
:"character"
~~ ontology
:"character"
~~ allGenes
:"character"
~~ allScores
:"ANY"
~~ geneSelectionFun
:"function"
~~ feasible
:"logical"
~~ graph
:"graphNEL"
~~ signature(object = "topGOdata")
: ... signature(object = "topGOdata", attr = "character", whichGO = "character")
: ... signature(object = "topGOdata", attr = "character", whichGO = "missing")
: ... signature(object = "topGOdata", whichGO = "character")
: ... signature(object = "topGOdata", whichGO = "missing")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata", whichGO = "character")
: ... signature(object = "topGOdata", whichGO = "missing")
: ... signature(object = "topGOdata", resList = "list")
: ... signature(object = "topGOdata", ...)
: ... signature(object = "topGOdata", test.stat = "classicCount")
: ... signature(object = "topGOdata", test.stat = "classicScore")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(.Object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(x = "topGOdata")
: ... signature(object = "topGOdata")
: ... signature(object = "topGOdata", whichGO = "character")
: ... signature(object = "topGOdata", whichGO = "missing")
: ... signature(object = "topGOdata", geneList = "numeric", geneSelFun = "function")
: ... signature(object = "topGOdata", geneList = "factor", geneSelFun = "missing")
: ... signature(object = "topGOdata", attr = "character")
: ... signature(object = "topGOdata")
: ... Adrian Alexa
buildLevels
,
mapGenes2GOgraph
,
annFUN.hgu
## load the ALL dataset and the annotation library library(ALL); data(ALL) affyLib <- annotation(ALL) library(package = affyLib, character.only = TRUE) library(genefilter) f1 <- pOverA(0.25, log2(100)) f2 <- function(x) (IQR(x) > 0.5) ff <- filterfun(f1, f2) ALL <- ALL[genefilter(ALL, ff), ] ## obtain the list of differentially expressed genes ## discriminate B-cell from T-cell classLabel <- as.integer(sapply(ALL$BT, function(x) return(substr(x, 1, 1) == 'T'))) ## over-expressed genes for T-cell samples geneList <- getPvalues(exprs(ALL), classlabel = classLabel) ## the distribution of the adjusted p-values hist(geneList, 100) hist(geneList[geneList < 1], 100) ## define a function to select the "significant" genes topDiffGenes <- function(allScore) { return(allScore < 0.01) } ## how many differentially expressed genes are: sum(topDiffGenes(geneList)) ## build the topGOdata class GOdata <- new("topGOdata", ontology = "BP", allGenes = geneList, geneSel = topDiffGenes, description = "GO analysis of ALL data: Differential Expression between B-cell and T-cell", annot = annFUN.hgu, affyLib = affyLib) ## display the GOdata object GOdata ########################################################## ## Examples on how to use the methods ## description of the experiment description(GOdata) ## obtain the genes that will be used in the analysis a <- genes(GOdata) str(a) numGenes(GOdata) ## obtain the score (p-value) of the genes selGenes <- names(geneList)[sample(1:length(geneList), 10)] gs <- geneScore(GOdata, whichGenes = selGenes) print(gs) ## if we want an unnamed vector containing all the feasible genes gs <- geneScore(GOdata, use.names = FALSE) str(gs) ## the list of significant genes sg <- sigGenes(GOdata) str(sg) numSigGenes(GOdata) ## to update the gene list .geneList <- geneScore(GOdata, use.names = TRUE) GOdata ## more available genes GOdata <- updateGenes(GOdata, .geneList, topDiffGenes) GOdata ## the available genes are now the feasible genes ## the available GO terms (all the nodes in the graph) go <- usedGO(GOdata) length(go) ## to list the genes annotated to a set of specified GO terms sel.terms <- sample(go, 10) ann.genes <- genesInTerm(GOdata, sel.terms) str(ann.genes) ## the score for these genes ann.score <- scoresInTerm(GOdata, sel.terms) str(ann.score) ## to see the number of annotated genes num.ann.genes <- countGenesInTerm(GOdata) str(num.ann.genes) ## to summarise the statistics termStat(GOdata, sel.terms)