topGOdata-class {topGO} | R Documentation

## Class "topGOdata"

### Description

TODO: The node attributes 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 ExpressionSet class. In this way we can use tests like global test, globalAncova.... – ALL variables starting with . are just for internal class usage (private)

### Objects from the Class

Objects can be created by calls of the form `new("topGOdata", ontology, allGenes, geneSelectionFun, description, annotationFun, ...)`. ~~ describe objects here ~~

### Slots

`description`:
  Object of class `"character"` ~~
`ontology`:
  Object of class `"character"` ~~
`allGenes`:
  Object of class `"character"` ~~
`allScores`:
  Object of class `"ANY"` ~~
`geneSelectionFun`:
  Object of class `"function"` ~~
`feasible`:
  Object of class `"logical"` ~~
`graph`:
  Object of class `"graphNEL"` ~~

### Methods

allGenes
  `signature(object = "topGOdata")`: ...
attrInTerm
  `signature(object = "topGOdata", attr = "character", whichGO = "character")`: ...
attrInTerm
  `signature(object = "topGOdata", attr = "character", whichGO = "missing")`: ...
countGenesInTerm
  `signature(object = "topGOdata", whichGO = "character")`: ...
countGenesInTerm
  `signature(object = "topGOdata", whichGO = "missing")`: ...
description<-
  `signature(object = "topGOdata")`: ...
description
  `signature(object = "topGOdata")`: ...
feasible<-
  `signature(object = "topGOdata")`: ...
feasible
  `signature(object = "topGOdata")`: ...
geneScore
  `signature(object = "topGOdata")`: ...
geneSelectionFun<-
  `signature(object = "topGOdata")`: ...
geneSelectionFun
  `signature(object = "topGOdata")`: ...
genes
  `signature(object = "topGOdata")`: ...
genesInTerm
  `signature(object = "topGOdata", whichGO = "character")`: ...
genesInTerm
  `signature(object = "topGOdata", whichGO = "missing")`: ...
genTable
  `signature(object = "topGOdata", resList = "list")`: ...
GenTable
  `signature(object = "topGOdata", ...)`: ...
getSigGroups
  `signature(object = "topGOdata", test.stat = "classicCount")`: ...
getSigGroups
  `signature(object = "topGOdata", test.stat = "classicScore")`: ...
graph<-
  `signature(object = "topGOdata")`: ...
graph
  `signature(object = "topGOdata")`: ...
initialize
  `signature(.Object = "topGOdata")`: ...
numGenes
  `signature(object = "topGOdata")`: ...
ontology<-
  `signature(object = "topGOdata")`: ...
ontology
  `signature(object = "topGOdata")`: ...
print
  `signature(x = "topGOdata")`: ...
sigGenes
  `signature(object = "topGOdata")`: ...
termStat
  `signature(object = "topGOdata", whichGO = "character")`: ...
termStat
  `signature(object = "topGOdata", whichGO = "missing")`: ...
updateGenes
  `signature(object = "topGOdata", geneList = "numeric", geneSelFun = "function")`: ...
updateGenes
  `signature(object = "topGOdata", geneList = "factor", geneSelFun = "missing")`: ...
updateTerm<-
  `signature(object = "topGOdata", attr = "character")`: ...
usedGO
  `signature(object = "topGOdata")`: ...

### Author(s)

Adrian Alexa

### See Also

`buildLevels`, `mapGenes2GOgraph`, `annFUN`

### Examples

    ## load the ALL dataset and the annotation library
    library(ALL); data(ALL)
    affyLib <- paste(annotation(ALL), "db", sep = ".")
    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.db,
                  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)

[Package topGO version 1.8.1 Index]