A wrapper for extracting functional GO terms enriched in the DE genes, based on the algorithm and the implementation in the topGO package
topGOtable(
DEgenes,
BGgenes,
ontology = "BP",
annot = annFUN.org,
mapping = "org.Mm.eg.db",
geneID = "symbol",
topTablerows = 200,
fullNamesInRows = TRUE,
addGeneToTerms = TRUE,
plotGraph = FALSE,
plotNodes = 10,
writeOutput = FALSE,
outputFile = "",
topGO_method2 = "elim",
do_padj = FALSE
)
A vector of (differentially expressed) genes
A vector of background genes, e.g. all (expressed) genes in the assays
Which Gene Ontology domain to analyze: BP
(Biological Process), MF
(Molecular Function), or CC
(Cellular Component)
Which function to use for annotating genes to GO terms. Defaults to annFUN.org
Which org.XX.eg.db
to use for annotation - select according to the species
Which format the genes are provided. Defaults to symbol
, could also be
entrez
or ENSEMBL
How many rows to report before any filtering
Logical, whether to display or not the full names for the GO terms
Logical, whether to add a column with all genes annotated to each GO term
Logical, if TRUE additionally plots a graph on the identified GO terms
Number of nodes to plot
Logical, if TRUE additionally writes out the result to a file
Name of the file the result should be written into
Character, specifying which of the methods implemented by topGO
should be used, in addition to the classic
algorithm. Defaults to elim
Logical, whether to perform the adjustment on the p-values from the specific topGO method, based on the FDR correction. Defaults to FALSE, since the assumption of independent hypotheses is somewhat violated by the intrinsic DAG-structure of the Gene Ontology Terms
A table containing the computed GO Terms and related enrichment scores
Allowed values assumed by the topGO_method2
parameter are one of the
following: elim
, weight
, weight01
, lea
,
parentchild
. For more details on this, please refer to the original
documentation of the topGO
package itself
library("airway")
library("DESeq2")
data("airway", package = "airway")
airway
#> class: RangedSummarizedExperiment
#> dim: 63677 8
#> metadata(1): ''
#> assays(1): counts
#> rownames(63677): ENSG00000000003 ENSG00000000005 ... ENSG00000273492
#> ENSG00000273493
#> rowData names(10): gene_id gene_name ... seq_coord_system symbol
#> colnames(8): SRR1039508 SRR1039509 ... SRR1039520 SRR1039521
#> colData names(9): SampleName cell ... Sample BioSample
dds_airway <- DESeqDataSet(airway, design= ~ cell + dex)
# Example, performing extraction of enriched functional categories in
# detected significantly expressed genes
if (FALSE) { # \dontrun{
dds_airway <- DESeq(dds_airway)
res_airway <- results(dds_airway)
library("AnnotationDbi")
library("org.Hs.eg.db")
res_airway$symbol <- mapIds(org.Hs.eg.db,
keys = row.names(res_airway),
column = "SYMBOL",
keytype = "ENSEMBL",
multiVals = "first")
res_airway$entrez <- mapIds(org.Hs.eg.db,
keys = row.names(res_airway),
column = "ENTREZID",
keytype = "ENSEMBL",
multiVals = "first")
resOrdered <- as.data.frame(res_airway[order(res_airway$padj),])
de_df <- resOrdered[resOrdered$padj < .05 & !is.na(resOrdered$padj),]
de_symbols <- de_df$symbol
bg_ids <- rownames(dds_airway)[rowSums(counts(dds_airway)) > 0]
bg_symbols <- mapIds(org.Hs.eg.db,
keys = bg_ids,
column = "SYMBOL",
keytype = "ENSEMBL",
multiVals = "first")
library(topGO)
topgoDE_airway <- topGOtable(de_symbols, bg_symbols,
ontology = "BP",
mapping = "org.Hs.eg.db",
geneID = "symbol")
} # }