Workflow: richCluster Example

Sarah Hong

2026-09-16

Load or Generate Clustering Data

load_cluster_data <- function(from_scratch=FALSE) {
  if (!from_scratch) {
    cluster_result <- readRDS(system.file("extdata", "cluster_result.rds", package = "richCluster"))
  } else {
    rr1 <- read.delim(system.file("extdata", "HF36wk_vs_HF12wk.txt", package="richCluster"))
    rr2 <- read.delim(system.file("extdata", "HF36wk_vs_WT12wk.txt", package="richCluster"))
    
    enrichment_results <- list(rr1, rr2)
    rr_names <- c('hf36_vs_hf12', 'wt36_vs_wt12')
    
    cluster_result <- richCluster::cluster(
      enrichment_results, df_names = rr_names, min_terms = 3, min_value=0.0001,
      distance_metric = "kappa", distance_cutoff = 0.5,
      linkage_method = "average", linkage_cutoff = 0.5
    )
  }
  return(cluster_result)
}

cluster_result <- load_cluster_data(from_scratch = FALSE)

Cluster-Level Visualizations

c_hmap <- cluster_hmap(cluster_result)
c_hmap
c_bar <- cluster_bar(cluster_result)
c_bar
c_dot <- cluster_dot(cluster_result)
c_dot
#> Warning: `line.width` does not currently support multiple values.
#> Warning: `line.width` does not currently support multiple values.

Term-Level Visualizations

clusters <- c("blood vessel development", "response to lipoprotein particle", "positive regulation of cell death")
terms <- c("myelination", "lipid oxidation")

t_hmap <- term_hmap(cluster_result, clusters, terms, value_type = "Padj")
t_hmap
t_bar <- term_bar(cluster_result, 1)
t_bar
t_dot <- term_dot(cluster_result, 1)
t_dot
#> Warning: `line.width` does not currently support multiple values.
#> Warning: `line.width` does not currently support multiple values.

Export Results

cluster_df <- export_df(cluster_result)
head(cluster_df)
#>   Cluster              ClusterName
#> 1       1 sterol metabolic process
#> 2       1 sterol metabolic process
#> 3       1 sterol metabolic process
#> 4       1 sterol metabolic process
#> 5       1 sterol metabolic process
#> 6       1 sterol metabolic process
#>                                            Term Annot_hf36_vs_hf12
#> 1                  alcohol biosynthetic process         GO:0046165
#> 2                     alcohol metabolic process         GO:0006066
#> 3              cholesterol biosynthetic process         GO:0006695
#> 4                 cholesterol metabolic process         GO:0008203
#> 5 organic hydroxy compound biosynthetic process         GO:1901617
#> 6    organic hydroxy compound metabolic process         GO:1901615
#>   Annotated_hf36_vs_hf12 Significant_hf36_vs_hf12 Pvalue_hf36_vs_hf12
#> 1                     96                       26        1.504810e-09
#> 2                    242                       50        4.285033e-12
#> 3                     43                       21        1.312468e-13
#> 4                    114                       37        9.677181e-16
#> 5                    191                       40        3.826113e-10
#> 6                    410                       69        1.148054e-11
#>   Padj_hf36_vs_hf12
#> 1      3.482786e-08
#> 2      1.359188e-10
#> 3      4.967101e-12
#> 4      4.467717e-14
#> 5      9.477152e-09
#> 6      3.455133e-10
#>                                                                                                                                                                                                                                                                                                                                                                                        GeneID_hf36_vs_hf12
#> 1                                                                                                                                                                                                                                                   Dhcr24,Insig1,Tm7sf2,Lep,Cyp51,Sc5d,Plek,Insig2,Sptlc2,Fgf1,Fdps,Lss,Mvd,Nsdhl,Fdft1,Hsd17b7,Srebf1,Apoe,Pmvk,Ptk2b,Hmgcr,Mvk,Hmgcs1,Isyna1,G6pdx,Scp2
#> 2                                                                                                       Hdlbp,Acadvl,Dhcr24,Ephx2,Insig1,Tm7sf2,Lep,Cyp51,Sc5d,Dgat2,Plcb1,Rbp4,Plek,Tpi1,Ldlr,Insig2,Sptlc2,Fgf1,Fdps,Mvd,Dhrs3,Lss,Nsdhl,Fdft1,Inpp5k,Hsd17b7,Srebf1,Acadl,Abca1,Apoe,Mbtps1,Npc2,Pmvk,Lrp5,Ptk2b,Srebf2,Vldlr,Hmgcr,Mtmr2,Abca2,Coq2,Dhrs4,Itpkb,Mvk,Hmgcs1,Cln8,Sqle,Isyna1,G6pdx,Scp2
#> 3                                                                                                                                                                                                                                                                                Dhcr24,Insig1,Tm7sf2,Cyp51,Sc5d,Insig2,Fgf1,Fdps,Lss,Fdft1,Mvd,Hsd17b7,Srebf1,Nsdhl,Apoe,Pmvk,Hmgcr,Mvk,Hmgcs1,G6pdx,Scp2
#> 4                                                                                                                                                                                    Hdlbp,Acadvl,Dhcr24,Ephx2,Insig1,Tm7sf2,Lep,Cyp51,Sc5d,Dgat2,Ldlr,Insig2,Fgf1,Fdps,Mvd,Lss,Nsdhl,Fdft1,Hsd17b7,Srebf1,Acadl,Abca1,Apoe,Mbtps1,Npc2,Pmvk,Lrp5,Srebf2,Vldlr,Hmgcr,Abca2,Mvk,Hmgcs1,Cln8,Sqle,G6pdx,Scp2
#> 5                                                                                                                                                                        Per2,Snai1,Dhcr24,Insig1,Tm7sf2,Wnt5a,Lep,Nr4a2,Cyp51,Sc5d,Plek,Tph2,Stard4,Insig2,Sptlc2,Fgf1,Fdps,Lss,Mvd,Nsdhl,Fdft1,Hsd17b7,Srebf1,Ldha,Apoe,Pmvk,Ptk2b,Hmgcr,Dab2,Lbr,Cdh3,Mvk,Hmgcs1,Sqle,Isyna1,Ctns,G6pdx,Pltp,Scp2,Msmo1
#> 6 Hdlbp,Per2,Snai1,Acadvl,Dhcr24,Pnkd,Park2,Ephx2,Insig1,Cpq,Tm7sf2,Wnt5a,Lep,Nr4a2,Cyp51,Sc5d,Dgat2,Plcb1,Rbp4,Plek,Tpi1,Tph2,Stard4,Ldlr,Insig2,Sptlc2,Fgf1,Fdps,Mvd,Dhrs3,Hprt,Lss,Nsdhl,Fdft1,Inpp5k,Hsd17b7,Srebf1,Comt,Acadl,Ldha,Abca1,Apoe,Mbtps1,Npc2,Pmvk,Lrp5,Ptk2b,Srebf2,Vldlr,Hmgcr,Mtmr2,Dab2,Lbr,Abca2,Coq2,Cdh3,Dhrs4,Itpkb,Mvk,Hmgcs1,Cln8,Sqle,Isyna1,Duoxa1,Ctns,G6pdx,Pltp,Scp2,Msmo1
#>   Annot_wt36_vs_wt12 Annotated_wt36_vs_wt12 Significant_wt36_vs_wt12
#> 1         GO:0046165                     96                       22
#> 2         GO:0006066                    242                       40
#> 3         GO:0006695                     43                       18
#> 4         GO:0008203                    114                       30
#> 5         GO:1901617                    191                       32
#> 6         GO:1901615                    410                       52
#>   Pvalue_wt36_vs_wt12 Padj_wt36_vs_wt12
#> 1        1.693687e-09      7.956122e-08
#> 2        2.997181e-11      1.792198e-09
#> 3        6.897061e-13      5.732140e-11
#> 4        3.831384e-14      3.863568e-12
#> 5        1.979968e-09      9.130789e-08
#> 6        8.872210e-10      4.385655e-08
#>                                                                                                                                                                                                                                                                                         GeneID_wt36_vs_wt12
#> 1                                                                                                                                                                             Dhcr24,Insig1,Tm7sf2,Lep,Cyp51,Sc5d,Gba,Sptlc2,Fdps,Mvd,Lss,Nsdhl,Fdft1,Hsd17b7,Hmgcs2,Apoe,Pmvk,Ptk2b,Hmgcr,Mvk,Hmgcs1,G6pdx
#> 2                                                                 Dhcr24,Insig1,Tm7sf2,Pon1,Lep,Cyp51,Sc5d,Dgat2,Tpi1,Gba,Ldlr,Sptlc2,Fdps,Dhrs3,Lss,Mvd,Nsdhl,Fdft1,Hsd17b7,Hmgcs2,Acadl,Abca1,Apoe,Mbtps1,Npc2,Pmvk,Ptk2b,Srebf2,Aplp2,Hmgcr,Mtmr2,Abca2,Itpkb,Dhrs4,Mvk,Hmgcs1,Aldh1a1,Sqle,G6pdx,Slc5a3
#> 3                                                                                                                                                                                                  Dhcr24,Insig1,Tm7sf2,Cyp51,Sc5d,Fdps,Mvd,Lss,Fdft1,Nsdhl,Hsd17b7,Hmgcs2,Apoe,Pmvk,Hmgcr,Mvk,Hmgcs1,G6pdx
#> 4                                                                                                                              Dhcr24,Insig1,Tm7sf2,Pon1,Lep,Cyp51,Sc5d,Dgat2,Ldlr,Fdps,Mvd,Lss,Nsdhl,Fdft1,Hsd17b7,Hmgcs2,Acadl,Abca1,Apoe,Mbtps1,Npc2,Pmvk,Srebf2,Aplp2,Hmgcr,Abca2,Mvk,Hmgcs1,Sqle,G6pdx
#> 5                                                                                                                       Per2,Dhcr24,Insig1,Tm7sf2,Lep,Nr4a2,Cyp51,Sc5d,Gba,Tph2,Stard4,Sptlc2,Fdps,Mvd,Lss,Nsdhl,Fdft1,Hsd17b7,Hmgcs2,Ldha,Apoe,Dkk3,Pmvk,Ptk2b,Hmgcr,Cdh3,Mvk,Hmgcs1,Sqle,G6pdx,Pltp,Msmo1
#> 6 Per2,Dhcr24,Insig1,Tm7sf2,Pon1,Lep,Nr4a2,Cyp51,Sc5d,Dgat2,Tpi1,Gba,Tph2,Stard4,Ldlr,Sptlc2,Fdps,Mvd,Dhrs3,Hprt,Lss,Nsdhl,Fdft1,Hsd17b7,Hmgcs2,Comt,Acadl,Ldha,Abca1,Apoe,Mbtps1,Npc2,Dkk3,Pmvk,Ptk2b,Srebf2,Aplp2,Hmgcr,Mtmr2,Cdh3,Abca2,Dhrs4,Itpkb,Mvk,Lipa,Hmgcs1,Aldh1a1,Sqle,G6pdx,Pltp,Slc5a3,Msmo1
#>                                                                                                                                                                                                                                                                                                                                                                                                                                                    GeneID
#> 1                                                                                                                                                                                                                                                                                       Dhcr24,Insig1,Tm7sf2,Lep,Cyp51,Sc5d,Plek,Insig2,Sptlc2,Fgf1,Fdps,Lss,Mvd,Nsdhl,Fdft1,Hsd17b7,Srebf1,Apoe,Pmvk,Ptk2b,Hmgcr,Mvk,Hmgcs1,Isyna1,G6pdx,Scp2,Gba,Hmgcs2
#> 2                                                                                                                 Hdlbp,Acadvl,Dhcr24,Ephx2,Insig1,Tm7sf2,Lep,Cyp51,Sc5d,Dgat2,Plcb1,Rbp4,Plek,Tpi1,Ldlr,Insig2,Sptlc2,Fgf1,Fdps,Mvd,Dhrs3,Lss,Nsdhl,Fdft1,Inpp5k,Hsd17b7,Srebf1,Acadl,Abca1,Apoe,Mbtps1,Npc2,Pmvk,Lrp5,Ptk2b,Srebf2,Vldlr,Hmgcr,Mtmr2,Abca2,Coq2,Dhrs4,Itpkb,Mvk,Hmgcs1,Cln8,Sqle,Isyna1,G6pdx,Scp2,Pon1,Gba,Hmgcs2,Aplp2,Aldh1a1,Slc5a3
#> 3                                                                                                                                                                                                                                                                                                                        Dhcr24,Insig1,Tm7sf2,Cyp51,Sc5d,Insig2,Fgf1,Fdps,Lss,Fdft1,Mvd,Hsd17b7,Srebf1,Nsdhl,Apoe,Pmvk,Hmgcr,Mvk,Hmgcs1,G6pdx,Scp2,Hmgcs2
#> 4                                                                                                                                                                                                                 Hdlbp,Acadvl,Dhcr24,Ephx2,Insig1,Tm7sf2,Lep,Cyp51,Sc5d,Dgat2,Ldlr,Insig2,Fgf1,Fdps,Mvd,Lss,Nsdhl,Fdft1,Hsd17b7,Srebf1,Acadl,Abca1,Apoe,Mbtps1,Npc2,Pmvk,Lrp5,Srebf2,Vldlr,Hmgcr,Abca2,Mvk,Hmgcs1,Cln8,Sqle,G6pdx,Scp2,Pon1,Hmgcs2,Aplp2
#> 5                                                                                                                                                                                                       Per2,Snai1,Dhcr24,Insig1,Tm7sf2,Wnt5a,Lep,Nr4a2,Cyp51,Sc5d,Plek,Tph2,Stard4,Insig2,Sptlc2,Fgf1,Fdps,Lss,Mvd,Nsdhl,Fdft1,Hsd17b7,Srebf1,Ldha,Apoe,Pmvk,Ptk2b,Hmgcr,Dab2,Lbr,Cdh3,Mvk,Hmgcs1,Sqle,Isyna1,Ctns,G6pdx,Pltp,Scp2,Msmo1,Gba,Hmgcs2,Dkk3
#> 6 Hdlbp,Per2,Snai1,Acadvl,Dhcr24,Pnkd,Park2,Ephx2,Insig1,Cpq,Tm7sf2,Wnt5a,Lep,Nr4a2,Cyp51,Sc5d,Dgat2,Plcb1,Rbp4,Plek,Tpi1,Tph2,Stard4,Ldlr,Insig2,Sptlc2,Fgf1,Fdps,Mvd,Dhrs3,Hprt,Lss,Nsdhl,Fdft1,Inpp5k,Hsd17b7,Srebf1,Comt,Acadl,Ldha,Abca1,Apoe,Mbtps1,Npc2,Pmvk,Lrp5,Ptk2b,Srebf2,Vldlr,Hmgcr,Mtmr2,Dab2,Lbr,Abca2,Coq2,Cdh3,Dhrs4,Itpkb,Mvk,Hmgcs1,Cln8,Sqle,Isyna1,Duoxa1,Ctns,G6pdx,Pltp,Scp2,Msmo1,Pon1,Gba,Hmgcs2,Dkk3,Aplp2,Lipa,Aldh1a1,Slc5a3
#>         Pvalue         Padj DatasetCount
#> 1 1.599249e-09 5.719454e-08            2
#> 2 1.712842e-11 9.640583e-10            2
#> 3 4.104765e-13 3.114425e-11            2
#> 4 1.964078e-14 1.954122e-12            2
#> 5 1.181289e-09 5.039252e-08            2
#> 6 4.493508e-10 2.210103e-08            2