CellDestiny: An RShiny application for the visualization and analysis of single cell lineage-tracing data
CellDestiny is a user-friendly RShiny application that allows you to easily visualize and analyze single cell lineage-tracing datasets (lentiviral barcoding, integration site gene therapy, CRISPR gene therapy, etc.).
CellDestiny comprises two distinct modules:
- Visualisation of Quality Control Parameters
- Data Visualisation and Analysis
The QC module enables the user to check the consistency of technical replicates and to check for repeat-use barcodes across individuals.
The analysis module enables the user to explore the data through several graphing options to assess clonal diversity, clone-size distributions as well as barcode sharing.
After plotting, images and their corresponding matrices can be downloaded such that statistical analysis of the data can be performed using external software packages such as R, and Prism.
There are 3 ways to use CellDestiny.
The first one is to use the graphical user interface (GUI) through the web application, the second one is to use the GUI through the installation of CellDestiny package on RStudio. The third one is to use directly use CellDestiny package functions (no GUI).
The simplest way to use the app is to open the web application by clicking https://perie-team.shinyapps.io/CellDestiny/.
Previous to its installation, you'll need all packages listed in DESCRIPTION file ("Imports" section) installed and an R version>= 4.1.0
library(devtools)
devtools::install_github("TeamPerie/CellDestiny", quiet = TRUE)
Make sure you have internet access.
Once the package is intsalled, you can launch the app as follow:
Launch_myApp()
NB: If you want to play with test data, first clone the github repository and move at its root in Rstudio before launching the app at the same place.
- use functions from the package to explore your data like done in UserManual directory.
To have an overview of CellDestiny functionalities, check out User Manual directory. You'll find all possible QC, analysis and graphs that CellDestiny proposes.
- For package users
Read package/ subdirectory pdf files or re-run Rmd files to practice.
- For app users
Read app/ subdirectory pdf file.
To play with the web app "test dataset", click on the link to open the web application.
In it, you see on the left a menu with the two parts: QC and Analysis. Both of them have their respective "Load data" sub-parts where you can load your matrix and metadata files.
---
To use the app, you need two input files:
- the count matrix with samples in columns and cell identifier (i.e. barcodes) in rows
- the corresponding metadata, listing all sample variables used in sample names
Good news ! You can use the script create_metadata.Rmd from HadjAbed-et-al._2022 article to generate your metadata file. You just need to adapt the "fill parameters" section to your data.
---
To give an example we imagine an experiment with 4 samples in total. The samples comprise 2 cell types (B and T lymphocytes) and 2 treatment conditions (+/- interferon alpha).
Sample names can be provided in the following format, using underscores to separate words (<=> variables) :
sample 1: LT_IFN
sample 2: LT_noIFN
sample 3: LB_IFN
sample 4: LB_noIFN
The corresponding metadata file for these samples must then be provided in the following format :
cellType | treatment
---------------------
LT | IFN
LB | noIFN
With variables as column names with their listed values.
What is important here is that:
- all columns must contain the list of all values (i.e. LT, LB) of variables (i.e. cellType) used in your sample names. The Ordering of metadata columns must match the ordering of your sample variables (ie first cellType and then treatment to match LT_IFN for example).
- all values have to be written in the exact same way than in the sample names names (i.e. be careful when using uppercase lettering and avoid white spaces within sample names)
- an underscore ("_") has to be used only as a variable name separator and must not be used in value names
QC matrix and its corresponding metadata must contain technical duplicate information. In the analysis module technical replicates should be merged prior (by summing or averaging the values between replicates) to uploading.
Using the same example experiment as above, here is an example of permitted QC matrix sample name:
sample 1 duplicate 1: LT_IFN_a
sample 1 duplicate 2: LT_IFN_b
sample 2 duplicate 1: LT_noIFN_a
sample 2 duplicate 2: LT_noIFN_b
sample 3 duplicate 1: LB_IFN_a
sample 3 duplicate 2: LB_IFN_b
sample 4 duplicate 1: LB_noIFN_a
sample 4 duplicate 2: LB_noIFN_b
And its metadata:
cellType | treatment | duplicate
--------------------------------
LT | IFN | a
LB | noIFN | b
Inputs matrices examples can be found in this directory testData/LentiviralBarcodingData/.
The article describing CellDestiny has been published here (to update when the paper is accepted) and the Github repository linked to the article is accesible here: https://github.com/TeamPerie/HadjAbed-et-al._2022.
Please do not hesitate to post an issue or contact the authors :
Louisa Hadj Abed : louisa.hadj-abed@curie.fr
Leïla Perié : leila.perie@curie.fr
Jason Cosgrove : jason.cosgrove@curie.fr
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.