federicomarini / GeneTonic

Enjoy your transcriptomic data and analysis responsibly - like sipping a cocktail
https://federicomarini.github.io/GeneTonic
Other
76 stars 8 forks source link
bioconductor bioconductor-package data-exploration data-visualization functional-enrichment-analysis gene-expression gui pathway-analysis r reproducible-research rna-seq-analysis rna-seq-data shiny transcriptome transcriptomics user-friendly

GeneTonic

R build
status Lifecycle:
stable Codecov.io coverage
status

The goal of GeneTonic is to analyze and integrate the results from Differential Expression analysis and functional enrichment analysis.

This package provides a Shiny application that aims to combine at different levels the existing pieces of the transcriptome data and results, in a way that makes it easier to generate insightful observations and hypothesis - combining the benefits of interactivity and reproducibility, e.g. by capturing the features and gene sets of interest highlighted during the live session, and creating an HTML report as an artifact where text, code, and output coexist.

GeneTonic can be found on Bioconductor (https://www.bioconductor.org/packages/GeneTonic).

If you use GeneTonic in your work, please refer to the original publication :page_facing_up: on BMC Bioinformatics (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-021-04461-5, doi: 10.1186/s12859-021-04461-5).

A preprint :page_facing_up: on GeneTonic is available on bioRxiv at https://www.biorxiv.org/content/10.1101/2021.05.19.444862v1.

Installation

You can install the development version of GeneTonic from GitHub with:

library("remotes")
remotes::install_github("federicomarini/GeneTonic", 
                        dependencies = TRUE, build_vignettes = TRUE)

Example

This is a basic example which shows you how to use GeneTonic on a demo dataset (the one included in the macrophage package).

library("GeneTonic")
example("GeneTonic")

# which will in the end run
library("macrophage")
library("DESeq2")
library("org.Hs.eg.db")
library("AnnotationDbi")

# dds object
data("gse", package = "macrophage")
dds_macrophage <- DESeqDataSet(gse, design = ~line + condition)
rownames(dds_macrophage) <- substr(rownames(dds_macrophage), 1, 15)
dds_macrophage <- estimateSizeFactors(dds_macrophage)

# 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)
)

# 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)

GeneTonic(dds = dds_macrophage,
          res_de = res_de,
          res_enrich = res_enrich,
          annotation_obj = anno_df,
          project_id = "my_first_genetonic")

Usage overview

You can find the rendered version of the documentation of GeneTonic at the project website https://federicomarini.github.io/GeneTonic, created with pkgdown.

Sneak peek?

Please visit http://shiny.imbei.uni-mainz.de:3838/GeneTonic/ to see a small demo instance running, on the macrophage dataset.

Development

If you encounter a bug, have usage questions, or want to share ideas and functionality to make this package better, feel free to file an issue.

Code of Conduct

Please note that the GeneTonic project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

MIT © Federico Marini