Giter Club home page Giter Club logo

ma_trix_app's Introduction

MATRiX is a shiny application for Mining and functional Analysis of TRanscriptomics data.

Contents

Introduction

This project initiate by Yannick Lippi aims to facilitate access to biologists in order to publish graphs such as heatmap, PCA or Venn diagram related to transcriptomic data. MATRiX is an application dedicated to DNA chip, RNA-seq and ChIP-Seq analysis, this application incorporates quality control with Principal components analysis helping to summarize the data and differential analysis with various methods such as Venn diagram, Heatmap clustering and GO Enrichment analysis by querying the DWS (DAVID WEB SERVICES).

MATRiX app is working with specific data produced by the limma, DESeq2, edgeR packages, resulting p-values are adjusted according to the Benjamini and Hochberg procedure [Benjamini and Hochberg 1995]. PCA is computed with the FactoMineR package and the plot is produced with the factoextra package, for the Heatmap and Venn diagram the graphs are obtained respectively with the gplots and VennDiagram package, those packages are available on CRAN This application works only with specific data, you can check the example file (MA_Trix_App/downloadData.zip)

Here's the global workflow passing by the experiment to the visualization:

and also a video Presentation

Installation

MATRiX is available for R>3.5.0. The installation, download and execution can all be performed with a small R script : First you'll need to install RJava in the aim to using RDAVIDWebService. You can install it using the following commands:

sudo apt-get install default-jdk
sudo R CMD javareconf #to associate it with R
sudo apt-get install r-cran-rjava
sudo apt-get install libgdal1-dev libproj-dev
sudo apt-get install libv8-3.14-dev
## Install RDAVIDWebService into R
source("https://bioconductor.org/biocLite.R")
biocLite("RDAVIDWebService")
install.packages("rJava")

## Load RDAVIDWebService
library(RDAVIDWebService)

## Load shiny packages
if(!require('shiny')){
 install.packages('shiny')
 library(shiny)
}

# Install dependencies, download last version of MATRiX from github and run matrix in one command :
runGitHub('GeT-TRiX/MA_Trix_App')

If RDAVIDWebService and Shiny are installed on your machine can also run the app as following :

git clone https://github.com/GeT-TRiX/MA_Trix_App
chmod +x ./cmd.sh
./cmd.sh

Contact

Here are our mail [Franck Soubès] ([email protected]) or [Yannick Lippi] ([email protected]) for any questions, suggestions or if you need help to use MATRiX, dont hesitate to contact us.

Acknowledgements

The main contributors to MATRiX:

Yannick Lippi, (Initiator, beta-testing, feature suggestions),

Franck Soubès, (Coding, Unit testing, documentation, packaging, feature suggestions),

Didier Laborie, (Virtual machine and DNS),

TOXALIM Team: BioToMyc & TIM, (beta-testing, feature suggestions)

Claire Naylies, (suggestions)

ma_trix_app's People

Contributors

fsoubes avatar ylippi avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

ma_trix_app's Issues

Error in Enricher api

when sending gene list from heatmap to enricher this gives a blank page with this content:
{
"expired": true
}

StripChart: change samples naming

sampleNames are renamed to get only numbers, pasted with groupName. this can generate duplicated sampleNames and ERROR.
Solution: Disable sample name renaming

Adpat Color choices

Il serait bien qu'il y ait la possibilité de choisir parmi toutes les couleurs possibles afin d'obtenir des figure cohérentes avec nos résultats obtenus via d'autre logiciel

Functional analysis

Review the Functional analysis widget of Heatmap:
line 1: Organism[list]; category[list]
line 2: Run Enrichment Analysis[buton]; with DAVID WS[text]
line 3: Send to DAVID[button]; Cluster[list]

manage NA values in ResTable

Sometimes, ResTables can contain NA values in FC, pvalues... and causes error in summary table, stripChart and heatmap.
2 possible solutions:
Choice 1 - manage NA values in summary page, heatmapand StripChart filtering criteria.
Choice 2 - filter out lines with NA after data loading

Enhance heatmap data export

Suggestion from annual satisfaction survey:
"Pouvoir extraire les logFC mais aussi les p-values et les p-values corrigées à partir des sous-groupes de gènes identifiés dans un cluster "
-> add logFC and Pval to the "Table summarizing the heatmap" in "Clusters" tab of Heatmap Menu.

Failure in sending heatmap gene list to DAVID api

got this msg:
Due to the ambiguous nature of gene symbols, DAVID does not allow their upload with the API at this time.
We are currently developing methods to submit a taxonomy id with an api call for OFFICIAL_GENE_SYMBOL.
Please Contact Us if you have any questions.

-> update the kind of gene identifiers used for the request

Error in volvanoplot eps export

when on wants to save a volcano to eps file, it exports the last plot generated (barplot).
Origin: /module/savemodules.R:L#116
Cause: ggsave by default save the lsat plot object generated, so the barplot if it is generated.
Solution: change the use of command ggsave() to cairo_ps()

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.