hypeR

An R Package for Geneset Enrichment Workflows

https://github.com/montilab/hyper

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
    2 of 5 committers (40.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (18.4%) to scientific vocabulary

Keywords

bioinformatics computational-biology geneset-enrichment-analysis
Last synced: 7 months ago · JSON representation

Repository

An R Package for Geneset Enrichment Workflows

Basic Info
Statistics
  • Stars: 76
  • Watchers: 6
  • Forks: 14
  • Open Issues: 11
  • Releases: 0
Topics
bioinformatics computational-biology geneset-enrichment-analysis
Created over 7 years ago · Last pushed 7 months ago
Metadata Files
Readme Changelog License

README.Rmd

---
output: rmarkdown::github_document
---



```{r echo=FALSE, message=FALSE}
knitr::opts_chunk$set(message=FALSE, comment="#>")
devtools::load_all(".")
```

# hypeR



![](https://github.com/montilab/hypeR/workflows/build/badge.svg)
[![](https://img.shields.io/badge/bioconductor-3.11-3a6378.svg)](https://doi.org/doi:10.18129/B9.bioc.hypeR)
[![](https://img.shields.io/badge/platforms-linux%20%7C%20osx%20%7C%20win-2a89a1.svg)](https://bioconductor.org/checkResults/3.9/bioc-LATEST/hypeR/)
[![](https://lifecycle.r-lib.org/articles/figures/lifecycle-stable.svg)](https://www.tidyverse.org/lifecycle/#stable)
[![](https://img.shields.io/github/last-commit/montilab/hypeR.svg)](https://github.com/montilab/hypeR/commits/master)

## Documentation

Please visit 

You can also try out our [web-application](https://hyper-shiny.shinyapps.io/wapp/) if you prefer an interface!

## Requirements

We recommend the latest version of R (\>= 4.0.0) but **hypeR** currently requires R (\>= 3.6.0) to be installed directly from Github or Bioconductor. To install with R (\>= 3.5.0) see below. Use with R (\< 3.5.0) is not recommended.

## Installation

Install the development version of the package from Github. **[Recommended]**

``` r
devtools::install_github("montilab/hypeR")
```

Or install the development version of the package from Bioconductor.

``` r
BiocManager::install("montilab/hypeR", version="devel")
```

 Or install with  Conda.
```bash
conda create --name hyper
source activate hyper
conda install -c r r-devtools
R
library(devtools)
devtools::install_github("montilab/hypeR")
```

Or install with previous versions of R.
```bash
git clone https://github.com/montilab/hypeR
nano hypeR/DESCRIPTION
# Change Line 8
# Depends: R (>= 3.6.0) -> Depends: R (>= 3.5.0)
R
install.packages("path/to/hypeR", repos=NULL, type="source")
```

## Usage

```{r, eval=FALSE}
library(hypeR)
```

```{r}
data(wgcna)

# Process many signatures
signatures <- wgcna[[1]]
str(signatures)

# Access to hundreds of genesets
genesets <- msigdb_gsets("Homo sapiens", "C2", "CP:KEGG_LEGACY", clean=TRUE)
print(genesets)
```

```{r, message=FALSE, warning=FALSE, results='hide'}
mhyp <- hypeR(signatures, genesets, test="hypergeometric", background=30000)
```

```{r, fig.width=8, fig.align='center'}
hyp_dots(mhyp, merge=TRUE, fdr=0.05, title="Co-expression Modules")
```

## Terminology
### Signature
__hypeR__ employs multiple types of enrichment analyses (e.g. hypergeometric, kstest, gsea). Depending on the type, different kinds of signatures are expected. There are three types of signatures `hypeR()` expects.
```{r}

# Simply a character vector of symbols (hypergeometric)
signature <- c("GENE1", "GENE2", "GENE3")

# A ranked character vector of symbols (kstest)
ranked.signature <- c("GENE2", "GENE1", "GENE3")

# A ranked named numerical vector of symbols with ranking weights (gsea)
weighted.signature <- c("GENE2"=1.22, "GENE1"=0.94, "GENE3"=0.77)

```

### Geneset
A geneset is simply a list of vectors, therefore, one can use any custom geneset in their analyses, as long as it's appropriately defined.
```{r}
genesets <- list("GSET1" = c("GENE1", "GENE2", "GENE3"),
                 "GSET2" = c("GENE4", "GENE5", "GENE6"),
                 "GSET3" = c("GENE7", "GENE8", "GENE9"))
```

#### Hyper enrichment
All workflows begin with performing hyper enrichment with `hyper()`. Often we are just interested in a single signature, as described above. In this case, `hyper()` will return a `hyp` object. This object contains relevant information to the enrichment results and is recognized by downstream methods.
```{r}
hyp_obj <- hypeR(signature, genesets)
```

#### Downstream methods
Please visit the [documentation](https://montilab.github.io/hypeR-docs/) for detailed functionality. Below is a brief list of some methods.

##### Downloading genesets
```{r, eval=FALSE}
BIOCARTA <- msigdb_gsets(species="Homo sapiens", collection="C2", subcollection="CP:BIOCARTA")
KEGG     <- msigdb_gsets(species="Homo sapiens", collection="C2", subcollection="CP:KEGG_LEGACY")
REACTOME <- msigdb_gsets(species="Homo sapiens", collection="C2", subcollection="CP:REACTOME")
```

##### Visualize results
```{r, eval=FALSE}
# Show interactive table
hyp_show(hyp_obj)

# Plot dots plot
hyp_dots(hyp_obj)

# Plot enrichment map
hyp_emap(hyp_obj)

# Plot hiearchy map (relational genesets)
hyp_hmap(hyp_obj)
```

##### Saving results
```{r, eval=FALSE}
# Map enrichment to an igraph object (relational genesets)
hyp_to_graph(hyp_obj)

# Save to excel
hyp_to_excel(hyp_obj, file_path="hypeR.xlsx")

# Save to table
hyp_to_table(hyp_obj, file_path="hypeR.txt")

# Generate markdown report
hyp_to_rmd(hyp_obj,
           file_path="hypeR.rmd",
           title="Hyper Enrichment (hypeR)",
           subtitle="YAP, TNF, and TAZ Knockout Experiments",
           author="Anthony Federico, Stefano Monti")
```

## Related Repositories

- [hypeR-db](https://github.com/montilab/hypeR-db)
*A repository for commonly used open source genesets used by hypeR*
- [hypeR-shiny](https://github.com/montilab/hypeR-shiny)
*Our Shiny web application built on hypeR*
- [hypeR-modules](https://github.com/montilab/hypeR-modules)
*Integration of hypeR modules in custom Shiny applications*
- [hypeR-docs](https://github.com/montilab/hypeR-docs)
*Landing site for hosting documentation for hypeR*
- [hypeR-workshop](https://github.com/montilab/hypeR-workshop)
*Materials for a hypeR tutorial workshop*

## Cite
```{r}
citation("hypeR")
```

Owner

  • Name: Monti Lab
  • Login: montilab
  • Kind: organization
  • Email: montilab@bu.edu

GitHub Events

Total
  • Issues event: 4
  • Issue comment event: 9
  • Push event: 20
  • Pull request event: 2
  • Fork event: 4
Last Year
  • Issues event: 4
  • Issue comment event: 9
  • Push event: 20
  • Pull request event: 2
  • Fork event: 4

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 236
  • Total Committers: 5
  • Avg Commits per committer: 47.2
  • Development Distribution Score (DDS): 0.106
Past Year
  • Commits: 14
  • Committers: 3
  • Avg Commits per committer: 4.667
  • Development Distribution Score (DDS): 0.357
Top Committers
Name Email Commits
Anthony Federico a****o 211
Nitesh Turaga n****a@g****m 11
tetomonti m****b@b****u 10
andrewdchen a****n@b****u 3
montilab m****b 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 7 months ago

Packages

  • Total packages: 1
  • Total downloads:
    • bioconductor 13,781 total
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 5
  • Total maintainers: 1
bioconductor.org: hypeR

An R Package For Geneset Enrichment Workflows

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 13,781 Total
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 21.7%
Downloads: 65.0%
Maintainers (1)
Last synced: 7 months ago

Dependencies

.github/workflows/build.yml actions
  • actions/checkout v1 composite
DESCRIPTION cran
  • R >= 3.6.0 depends
  • BiocStyle * imports
  • R6 * imports
  • dplyr * imports
  • ggforce * imports
  • ggplot2 * imports
  • htmltools * imports
  • httr * imports
  • igraph * imports
  • kableExtra * imports
  • magrittr * imports
  • msigdbr * imports
  • openxlsx * imports
  • purrr * imports
  • reactable * imports
  • reshape2 * imports
  • rlang * imports
  • rmarkdown * imports
  • scales * imports
  • shiny * imports
  • stats * imports
  • stringr * imports
  • visNetwork * imports
  • devtools * suggests
  • knitr * suggests
  • testthat * suggests
  • tidyverse * suggests
Dockerfile docker
  • bioconductor/bioconductor_docker RELEASE_3_17 build