Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Interactive Differential Expression AnaLysis - DE made accessible and reproducible

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md
NotificationsYou must be signed in to change notification settings

federicomarini/ideal

Repository files navigation

R build statuscodecov.ioLifecycle: stable

ideal - Interactive Differential Expression AnaLysis in RNA-seq data

ideal is a Bioconductor package containing a Shiny application for analyzing RNA-Seq data in the context of differential expression.This enables an interactive and at the same time reproducible analysis, keeping the functionality accessible, and yet providing a comprehensive selection of graphs and tables to mine the dataset at hand.

ideal is an R package which fully leverages the infrastructure of the Bioconductor project in order to deliver an interactive yet reproducible analysis for the detection of differentially expressed genes in RNA-Seq datasets.Graphs, tables, and interactive HTML reports can be readily exported and shared across collaborators.The dynamic user interface displays a broad level of content and information, subdivided by thematic tasks.All in all, it aims to enforce a proper analysis, by reaching out both life scientists and experienced bioinformaticians, and also fosters the communication between the two sides, offering robust statistical methods and high standard of accessible documentation.

It is structured in a similar way to thepcaExplorer, also designed as an interactive companion tool for RNA-seq analysis focused rather on the exploratory data analysis e.g. using principal components analysis as a main tool.

The interactive/reactive design of the app, with a dynamically generated user interface makes it easy and immediate to apply the gold standard methods in a way that is information-rich and accessible also to the bench biologist, while also providing additional insight also for the experienced data analyst.Reproducibility is supported via state saving and automated report generation.

Installation

ideal can be easily installed usingBiocManager::install():

if (!requireNamespace("BiocManager",quietly=TRUE))    install.packages("BiocManager")BiocManager::install("ideal")

Note that this should be the preferred way to install the latest stable release version.

To also install the packages listed in theSuggests: field, you can run

BiocManager::install("ideal",dependencies=TRUE)

to make sure to have for example the required demo dataset (airway) when running the app - or if you want to follow through the vignette entirely.

Optionally, if you want to install the development version from GitHub, you can use:

BiocManager::install("federicomarini/ideal",dependencies=TRUE)# or alternatively...devtools::install_github("federicomarini/ideal",dependencies=TRUE)

Settingdependencies = TRUE should ensure that all packages, including the ones in theSuggests: field of theDESCRIPTION, are installed - this can be essential if you want to reproduce the code in the vignette, for example.

Installation troubleshooting

If usingdevtools orremotes to install packages, you could run into the warning

# ... after launching the install_github commandError: (convertedfromwarning)package ´IRanges´wasbuiltunderRversion3.6.2ExecutionhaltedERROR:lazyloadingfailedforpackage ´ideal´*removing ´Library/Frameworks/R.framework/Versions/3.6/Resources/library/ideal´Error:Failedtoinstall'ideal'fromGitHub:  (convertedfromwarning)installationofpackage ´....../ideal_1.11.2.tar.gz´hadnonzeroexitstatus

In this case, you can follow the instructions found athttps://remotes.r-lib.org/index.html#environment-variables, which specifically suggest to setR_REMOTES_NO_ERRORS_FROM_WARNINGS totrue. You can do so directly in R before installing the package by entering

Sys.setenv(R_REMOTES_NO_ERRORS_FROM_WARNINGS="true")# and then againdevtools::install_github("federicomarini/ideal",dependencies=TRUE)

Which version should I use?

If you are aregular user, you shouldinstall the latest stable release version.This can be done at best by usingBiocManager::install("ideal"), as recommended inhttps://www.bioconductor.org/install/#troubleshoot-bioconductor-packages.Please follow the general instructions inhttps://www.bioconductor.org/install to make sure you are using the correct version, matched to the version of the R software in use.

If you are asoftware developer and want to have access to the latest features that are currently in thedevel branch of Bioconductor (i.e. experimental functionality, and more), you can do so by calling firstBiocManager::install(version = "devel") as specified inhttps://bioconductor.org/developers/how-to/useDevel/, then followed byBiocManager::install("ideal").Keep in mind that according to the release cycle you might need to install the devel version of R itself.

If you just want to use thebleeding edge version, which is the one you can find on GitHub, you can install that by callingBiocManager::install("federicomarini/ideal") (which is basically a wrapper aroundremotes::install("federicomarini/ideal")).This approach might be recommended forexperienced users - based on which Bioconductor version you might be using, you might encounter mismatches in the dependencies if you mix up versions from release and devel branches.

Quick start

This command loads theideal package

library("ideal")

The main parameters forideal are

  • dds_obj - aDESeqDataSet object. If not provided, then acountmatrix and aexpdesign need to be provided. If none of the above is provided, it is possibleto upload the data during the execution of the Shiny App
  • res_obj - aDESeqResults object. If not provided, it can be computed duringthe execution of the application
  • annotation_obj - adata.frame object, with row.names as gene identifiers(e.g. ENSEMBL ids) and a column,gene_name, containing e.g. HGNC-based genesymbols. If not provided, it can be constructed during the execution via theorg.eg.XX.db packages
  • countmatrix - a count matrix, with genes as rows and samples as columns.If not provided, it is possible to upload the data during the execution ofthe Shiny App
  • expdesign -adata.frame containing the info on the experimental covariatesof each sample. If not provided, it is possible to upload the data during theexecution of the Shiny App

Theideal app can be launched in different modes:

  • ideal(dds_obj = dds, res_obj = res, annotation_obj = anno), where the objectsare precomputed in the current session and provided as parameters
  • ideal(dds_obj = dds), as in the command above, but where the result object isassembled at runtime
  • ideal(countmatrix = countmatrix, expdesign = expdesign), where instead ofpassing the definedDESeqDataSet object, its components are given, namely thecount matrix (e.g. generated after a run of featureCounts or HTSeq-count) and adata frame with the experimental covariates. The design formula can be constructedinteractively at runtime
  • ideal(), where the count matrix and experimental design can simply be uploadedat runtime, where all the derived objects can be extracted and computed live. Thesefiles have to be formatted as tabular text files, and a function in the packagetries to guess the separator, based on heuristics of occurrencies per line ofcommonly used characters

Accessing the public instance ofideal

To useideal without installing any additional software, you canaccess the public instance of the Shiny Server made available at the Institute ofMedical Biostatistics, Epidemiology and Informatics (IMBEI) in Mainz.

This resource is accessible at this address:

http://shiny.imbei.uni-mainz.de:3838/ideal

Deploying to a Shiny Server

A deployment-oriented version of the package is available athttps://github.com/federicomarini/ideal_serveredition. This repository contains alsodetailed instruction to setup the running instance of a Shiny Server, whereidealcan be run without further installation for the end-users.

Code of Conduct

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

Contact

For additional details regarding the functions ofideal, please consult the documentation orwrite an email tomarinif@uni-mainz.de.

Bug reports/Issues/New features

Please usehttps://github.com/federicomarini/ideal/issues for reporting bugs, issues or forsuggesting new features to be implemented.


[8]ページ先頭

©2009-2025 Movatter.jp