https://github.com/carmonalab/projectils
Interpretation of cell states using reference single-cell maps
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 15 DOI reference(s) in README -
✓Academic publication links
Links to: pubmed.ncbi, ncbi.nlm.nih.gov, nature.com, science.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.7%) to scientific vocabulary
Repository
Interpretation of cell states using reference single-cell maps
Basic Info
Statistics
- Stars: 273
- Watchers: 8
- Forks: 31
- Open Issues: 12
- Releases: 9
Metadata Files
README.md
A framework for reference-based single-cell RNA-seq data analysis
ProjecTILs is a computational method to project scRNA-seq data into reference single-cell atlases, enabling their direct comparison in a stable, annotated system of coordinates.
In contrast to other methods, ProjecTILs allows not only accurately embedding new scRNA-seq data into a reference without altering its structure, but also characterizing previously unknown cell states that "deviate" from the reference. ProjecTILs accurately predicts the effects of cell perturbations and identifies gene programs that are altered in different conditions and tissues.
You can use ProjecTILs pre-defined cell type-specific reference maps or create your own (see Building a custom reference atlas for ProjecTILs) for any cell type[s] of interest.
For real-life applications, check out our list of ProjecTILs Case Studies
Find the installation instructions for the package below, and a vignette detailing its functions at Tutorial (html) and Tutorial (repository)
Package Installation
To install ProjecTILs directly from its Git repository, run the following code from within R or RStudio:
``` r install.packages("remotes") library(remotes)
remotes::installgithub("carmonalab/STACAS") remotes::installgithub("carmonalab/ProjecTILs") ```
Test the package
Load sample data and test your installation:
``` r library(ProjecTILs) ref <- load.reference.map() data(queryexampleseurat)
query.projected <- Run.ProjecTILs(queryexampleseurat, ref=ref) ```
By default, load.reference.map() downloads and loads a reference for mouse tumor-infiltrating T cells.
Alternatively, you can get a list of available reference maps with list.reference.maps() and download and save collections or single reference maps:
r
list.reference.maps()
list_of_ref.maps <- get.reference.maps(collection = "human")
list_of_ref.maps <- get.reference.maps(reference = "CD4")
reference_map <- list_of_ref.maps[["human"]][["CD4"]]
Data projection DEMO
Find a step-by-step tutorial for ProjecTILs at: ProjecTILs tutorial
Running ProjecTILs
You can use ProjecTILs in two modes:
Mode 1: just for label transfer, faster, doesn't alter your dimensionality reduction
r
ProjecTILs.classifier(query = query_object, ref = reference_map)
Mode 2: reference embedding, to explore your dataset in the context of a stable reference map
r
Run.ProjecTILs(query = query_object, ref = reference_map)
Note: ProjecTILs performs cell state quantifications in the PCA latent space. UMAP embeddings are provided for visual exploration only and should be interpreted with caution as cell-cell distances and densities in UMAP are highly distorted (see e.g. Chari and Pachter (2023))
ProjecTILs CASE STUDIES
For real-life applications on public datasets, check out our list of ProjecTILs Case Studies
Documentation
See a description of the functions implemented in ProjecTILs at: ProjecTILs functions
Reference Maps
Reference atlases are generated by comprehensive scRNA-seq multi-study integration and curation, and describe reference cell subtypes in a specific biological context.
Currently available atlases:
human CD8+ TIL atlas: consists of 11,021 high-quality single-cell transcriptomes from 20 samples covering 7 tumor types. Generated from the collection of datasets found at N. Borcherding's utility. Available at: https://doi.org/10.6084/m9.figshare.23608308 and interactively at: https://spica.unil.ch/refs/CD8T_human
human CD4+ TIL atlas: consists of 12,631 high-quality single-cell transcriptomes from 20 samples covering 9 tumor types. Generated from the collection of datasets by Zheng et al. Science 2021. Available at: https://doi.org/10.6084/m9.figshare.21981536.v1 and interactively at: https://spica.unil.ch/refs/CD4T_human
human blood and tumor-infiltrating DC atlas: consists of 18,753 high-quality single-cell transcriptomes from 11 studies covering 5 tumor types and healthy patient for blood. Generated from the collection of datasets by Gerhard et al. JEM, 2020 and Villani et al. Science 2017 for the blood samples. Available at: https://doi.org/10.6084/m9.figshare.22040801.v1 and interactively at: https://spica.unil.ch/refs/DC_human
mouse TIL atlas: consists of 16,803 single-cell transcriptomes from 25 samples (B16 melanoma and MC38 colon adenocarcinoma tumors) from six different studies. Available at: https://doi.org/10.6084/m9.figshare.12478571 and interactively at: https://spica.unil.ch/refs/TIL
mouse acute and chronic viral infection CD8 T cell atlas: consists of 7,000 virus-specific CD8 T cells from 12 samples (spleen) from different timepoints (day 4.5, day 7/8 and day 30) from mice infected with lymphocytic choriomeningitis virus (LCMV) Arm (acute infection) or cl13 (chronic infection) strains. Available at: https://doi.org/10.6084/m9.figshare.12489518 and interactively at: https://spica.unil.ch/refs/viral-CD8-T
mouse acute and chronic viral infection CD4 T cell atlas: consists of over 35,000 high-quality virus-specific (GP66:I-Ab+) CD4 T cells from 11 samples (spleen) from different timepoints following LCMV Armstrong or Clone 13 viral infection (7 or 21 days after Clone 13 infection, and 7, 21 and >60 days after LCMV Armstrong infection). Available at: https://doi.org/10.6084/m9.figshare.16592693 and interactively at: https://spica.unil.ch/refs/viral-CD4-T
Custom Reference Maps
If you wish to use your own custom reference atlas, we recommend to use STACAS for single-cell data integration. Here is an example: Building a custom reference atlas for ProjecTILs.
Updating of reference map to include new cell states
After projection, one may want to incorporate the projected data into an "updated" reference. To recalculate the embeddings of a reference to account for new, projected data, use:
r
new_reference <- recalculate.embeddings( ref = old_reference, projected = projected_object )
See an example in the following workflow section.
SPICA online portal
You can now explore our atlases interactively and project your data through the SPICA web portal. Find some tutorials for interacting with SPICA at https://spica.unil.ch/tutorials
Troubleshooting
If load.reference.map() fails with error "Reference object X is invalid" the first time you run it; it is likely that reference atlas download has failed due to Timeout. Try setting
options(timeout = 3000)to increase download Timeout.If a warning message prevented remotes from installing the package, try:
sys.setenv(r_remotes_no_errors_from_warnings="true")
- For analyzing datasets composed of multiple batches (e.g. different subjects, technologies), we recommend projecting each batch separately, by providing ProjecTILs a list of Seurat objects as input, e.g.:
r data.seurat.list <- SplitObject(data.seurat, split.by = "batch") query.projected.list <- make.projection(data.seurat.list)
Citation
Interpretation of T cell states from single-cell transcriptomics data using reference atlases Massimo Andreatta, Jesus Corria-Osorio, Soren Muller, Rafael Cubas, George Coukos, Santiago J Carmona. Nature Communications 12 Article number: 2965 (2021) - https://www.nature.com/articles/s41467-021-23324-4
Owner
- Name: Cancer Systems Immunology Lab
- Login: carmonalab
- Kind: organization
- Location: Lausanne, Switzerland
- Website: https://agora-cancer.ch/laboratory/carmona-lab
- Twitter: carmonation
- Repositories: 16
- Profile: https://github.com/carmonalab
At Ludwig Cancer Research Lausanne and Department of Oncology, University of Lausanne & Swiss Institute of Bioinformatics
GitHub Events
Total
- Create event: 1
- Release event: 1
- Issues event: 15
- Watch event: 31
- Issue comment event: 16
- Push event: 15
- Fork event: 2
Last Year
- Create event: 1
- Release event: 1
- Issues event: 15
- Watch event: 31
- Issue comment event: 16
- Push event: 15
- Fork event: 2
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 10
- Total pull requests: 0
- Average time to close issues: 6 months
- Average time to close pull requests: N/A
- Total issue authors: 8
- Total pull request authors: 0
- Average comments per issue: 1.9
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 8
- Pull requests: 0
- Average time to close issues: 2 months
- Average time to close pull requests: N/A
- Issue authors: 6
- Pull request authors: 0
- Average comments per issue: 1.25
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- itamuria (3)
- gianfilippo (2)
- andynkili (2)
- apal6 (2)
- danli349 (2)
- NoemieL (2)
- simpakkk (1)
- jeremymsimon (1)
- florekem (1)
- ycl6 (1)
- MWRR (1)
- jjr1919 (1)
- rana228 (1)
- shwong-tw (1)
- reyeshdezosuna (1)
Pull Request Authors
- apal6 (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- BiocParallel * depends
- Matrix * depends
- R >= 4.0.0 depends
- Seurat * depends
- UCell * depends
- ggplot2 * depends
- gridExtra * depends
- pracma * depends
- reshape2 * depends
- scGate * depends
- scales * depends
- umap * depends
- EnhancedVolcano * suggests
- fastICA * suggests
- plotly * suggests