Cell atlases such as Tabula Muris and Tabula Sapiens are multi-organ single cell omics data sets describing entire organisms. A cell atlas approximation is a lossy and lightweight compression of a cell atlas that can be streamed via the internet.
This project enables biologists, doctors, and data scientist to quickly find answers for questions such as:
NOTE: These questions can be also asked in R, Python, JavaScript or in a language agnostic manner using the REST API (see https://atlasapprox.readthedocs.io).
To install the R interface of atlasapprox
from CRAN, use:
install.packages("atlasapprox")
To use the package, you must first load it:
knitr::opts_chunk$set(fig.width=6, fig.height=6)
library("atlasapprox")
Now you have all atlasapprox
functions available.
The easiest way to explore atlas approximations is to query a list of available organisms:
organisms <- GetOrganisms() print(organisms)
Once you know what species you are interested in, you can explore the list of organs from that species for which an atlas approximation is available:
human_organs <- GetOrgans(organism = 'h_sapiens') print(human_organs)
The next level of zoom is to query the list of cell types that make up an organ of choice, e.g.:
cell_types <- GetCelltypes(organism = 'h_sapiens', organ = 'Lung') print(cell_types)
NOTE: Although cell atlases aim to cover all cell types from a tissue, rare types might be missing because of limited sampling or inaccurate annotation. If you think a cell type is missing from a tissue, please contact fabio DOT zanini AT unsw DOT edu DOT au.
If you have some genes you are interested in, you can query their expression across cell types in the organ of choice:
expression <- GetAverage(organism = 'h_sapiens', organ = 'Lung', features = c('PTPRC', 'COL1A1')) print(expression)
You can also request not only the average level of expression, but the fraction of cells within each type that express the gene:
fraction_expressing <- GetFractionDetected(organism = 'h_sapiens', organ = 'Lung', features = c('PTPRC', 'COL1A1')) print(fraction_expressing)
To get a list of all available features (e.g. genes) for an organism, you can use:
genes <- GetFeatures(organism = 'h_sapiens') # To show just the first 20 genes print(head(genes, 20))
Each cell type expressed specific genes that contribute to its unique biological function, called markers. To request a list of markers for your cell type of choice:
markers <- GetMarkers(organism = 'h_sapiens', organ = 'Lung', cell_type = 'fibroblast', number = 5) print(markers)
NOTE: There are multiple methods to compute marker genes. The current version of the API uses one specific method, but future versions aim to give the user choice as of which method they prefer.
If you're interested in knowing which cell types express your gene of interest the most, across all organs:
highest_expressors <- GetHighestMeasurement(organism = 'h_sapiens', feature = 'PTPRC', number = 5) print(highest_expressors)
If you want to find other features (genes) that show similar expression patterns to a feature of interest. To get a list of similar features for your gene of choice:
similar_genes <- GetSimilarFeatures(organism = 'h_sapiens', organ = 'lung', feature = 'PTPRC', number = 5, method = 'correlation') print(similar_genes)
NOTE: There are multiple methods to compute feature similarity. The available methods are:
atlasapprox
relies upon available cell atlases kindly released for public use:
We are grateful to all authors above for their help and committment to open science.
To get the data sources in the package, call:
data_sources <- GetDataSources() print(data_sources)
NOTE: Although the original cell type annotations of these data sets are mostly preserved, a quality check is performed before computing approximations. During this step, some cell types might be filtered out, renamed, or split into multiple subannotations. If you found a problem in the data that indicates misannotations, please reach out to fabio DOT zanini AT unsw DOT edu DOT au and we will endeavour to fix it.
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.