Calculate (and plot) the dendrogram of the gene set enrichment results
gs_dendro(
res_enrich,
gtl = NULL,
n_gs = nrow(res_enrich),
gs_ids = NULL,
gs_dist_type = "kappa",
clust_method = "ward.D2",
color_leaves_by = "z_score",
size_leaves_by = "gs_pvalue",
color_branches_by = "clusters",
create_plot = TRUE
)
A data.frame
object, storing the result of the functional
enrichment analysis. See more in the main function, GeneTonic()
, to see the
formatting requirements.
A GeneTonic
-list object, containing in its slots the arguments
specified above: dds
, res_de
, res_enrich
, and annotation_obj
- the names
of the list must be specified following the content they are expecting
Integer value, corresponding to the maximal number of gene sets to
be included (from the top ranked ones). Defaults to the number of rows of
res_enrich
Character vector, containing a subset of gs_id
as they are
available in res_enrich
. Lists the gene sets to be included, additionally to
the ones specified via n_gs
. Defaults to NULL.
Character string, specifying which type of similarity (and
therefore distance measure) will be used. Defaults to kappa
, which uses
create_kappa_matrix()
Character string defining the agglomeration method to be
used for the hierarchical clustering. See stats::hclust()
for details, defaults
to ward.D2
Character string, which columns of res_enrich
will
define the color of the leaves. Defaults to z_score
Character string, which columns of res_enrich
will
define the size of the leaves. Defaults to the gs_pvalue
Character string, which columns of res_enrich
will
define the color of the branches. Defaults to clusters
, which calls
dynamicTreeCut::cutreeDynamic()
to define the clusters
Logical, whether to create the plot as well.
A dendrogram object is returned invisibly, and a plot can be generated as well on that object.
library("macrophage")
library("DESeq2")
library("org.Hs.eg.db")
library("AnnotationDbi")
# dds object
data("gse", package = "macrophage")
dds_macrophage <- DESeqDataSet(gse, design = ~ line + condition)
#> using counts and average transcript lengths from tximeta
rownames(dds_macrophage) <- substr(rownames(dds_macrophage), 1, 15)
dds_macrophage <- estimateSizeFactors(dds_macrophage)
#> using 'avgTxLength' from assays(dds), correcting for library size
# annotation object
anno_df <- data.frame(
gene_id = rownames(dds_macrophage),
gene_name = mapIds(org.Hs.eg.db,
keys = rownames(dds_macrophage),
column = "SYMBOL",
keytype = "ENSEMBL"
),
stringsAsFactors = FALSE,
row.names = rownames(dds_macrophage)
)
#> 'select()' returned 1:many mapping between keys and columns
# res object
data(res_de_macrophage, package = "GeneTonic")
res_de <- res_macrophage_IFNg_vs_naive
# res_enrich object
data(res_enrich_macrophage, package = "GeneTonic")
res_enrich <- shake_topGOtableResult(topgoDE_macrophage_IFNg_vs_naive)
#> Found 500 gene sets in `topGOtableResult` object.
#> Converting for usage in GeneTonic...
res_enrich <- get_aggrscores(res_enrich, res_de, anno_df)
gs_dendro(res_enrich,
n_gs = 100
)
#> Warning: n too large, allowed maximum for palette Set1 is 9
#> Returning the palette you asked for with that many colors
#> Warning: Length of values vector was shorter than the number of clusters (Excluding 0) - vector was recycled