Spatial Omics Analysis - WEHI-RCPStudentInternship/data-commons GitHub Wiki
- Omicsis a term summarizing various different analyses, such as genomics, epigenomics, transcriptomics, proteomics, lipidomics and metabolomics.
- Genomics, for example, analyzes the total genome, transcriptomics reads the total RNA and proteomics is evaluating the protein content.
- Spatial omics now combine the molecular analysis with spatial information on the cell’s localization within the tissue. Therefore, this technology is providing a powerful tool to understand important mechanisms such as tissue organization or cell regulation.
Spatial omics: Navigating to the golden era of cancer research
- The idea that tumor microenvironment (TME) is organized in a spatial manner will not surprise many cancer biologists; however, systematically capturing spatial architecture of TME is still not possible until recent decades.
- The past five years have witnessed a boom in the research of high-throughput spatial techniques and algorithms to delineate TME at an unprecedented level.
- Here, we review the technological progress of spatial omics and how advanced computation methods boost multimodal spatial data analysis. Then, we discussed the potential clinical translations of spatial omics research in precision oncology, and proposed a transfer of spatial ecological principles to cancer biology in spatial data interpretation.
- So far, spatial omics is placing us in the golden age of spatial cancer research. Further development and application of spatial omics may lead to a comprehensive decoding of the TME ecosystem and bring the current spatiotemporal molecular medical research into an entirely new paradigm.
- A challenge in decoding tumour spatial structure is how to capture the high-throughput spatial profile of TME at the genome-wide level.
- Solving this issue requires the ability to record the transcriptional information and spatial coordinates simultaneously. An applicable way is high-dimensional imaging (i.e., imaging mass cytometry, IMC, and multiplex immunohistochemistry) ; however, those approaches can only quantify the low-throughput profile of TME (designed gene sets) rather than the whole transcriptome/proteome.
Squidpy: a scalable framework for spatial omics analysis
- https://squidpy.readthedocs.io/en/stable/
- Published on 2022 so it’s pretty new
- Spatial Quantification of Molecular Data in Python
- Built on top of Scanpy and AnnData and other Python libraries
- A Python framework that brings together tools from omics and image analysis to enable scalable description of spatial molecular data Efficiently store, manipulate and interactively visualize spatial omics data Aim to bring diversity of spatial data in common data representations and provide a common set of analysis and interactive visualizations tools
Other Platform/Technology Mentioned
Motivation
- Existing framework would either focus on pre-processing or just 1 aspect of spatial data analysis
- In need of a comprehensive framework that enables community-driven scalable analyses of both spatial neighborhood graph and image, along with an interactive visualization module
Function
- Data representations to manage and store spatial omics data in a technology-agnostic way: a neighborhood graph, and tissue images
- Claim to be scalable and faster than Giotto
- Works with subcellular-resolution spatial data like 4i
- Provides infrastructure and analysis tools to identify spatial patterns in tissue
- Spatial Proximity - in graph
- Spatial pattern: co-occurrence score → investigate patterns of spatial organization in tissue
- Spatial Variability - quantity that is measured at different spatial locations exhibits values that differ across the locations
- Enables analysis and visualization of large images in spatial omics data
- Segmentation of cells
- Image-based features: summary, histogram, and texture features and more-advanced features like deep-learning/ Cell Profiler
- Enables integrative analysis of spatial transcriptomics data
- Allow comparison and joint analysis of spatial patterning of the tissue at the molecular level and morphological level
Related Videos
- https://www.youtube.com/watch?v=e1lJIFNzCho: Briefly Explanation of Squidpy
- https://youtu.be/btqPgui8gpg?t=2982: From 50:00 onwards will show how the code works in Jupyter Notebook
Aquila: a spatial omics database and analysis platform
- Try here https://aquila.cheunglab.org/
- Published on 2022 so it’s pretty new
- A combined spatial omics database and analysis platform that supports all types of spatial omics data
- Developed in Python, Rust (most of the analysis is implemented in Rust)
Other Platform/Technology Mentioned
- Visium: sequence based tools like slide-seq and DBiT-seq – not at single-cell resolution
- Stereo-seq, Seq-scope, and sci-Space → these can solve at single-cell or subcellular resolution
- Imaging-based: seqFISH, MERFISH, STARmap
- SpatialDB: the closest to the technology Aquila wants to achieve but lacks of lots data and functions
- Giotto and Squidpy can be used to analyze data → required programming skills
Motivation
- Lack of database to access and analyze spatial omics data
- contains 107 datasets from 30 diseases with 6500+ regions and 15.7 million cells → have spatial transcriptome, proteome analyses, 2D and 3D Spatial omics technologies produce a rich amount of data → Needs tool for this
Functions
- Visualization of many types
- Can use own data or one on the platform
- To upload must provide 3 files containing: Gene Expression Value, Cell/ Spot Coordination, and ROI annotation
- Can be installed as an individual application or be called be RESTful APIs
Materials and Methods
- Data Collection and Preprocessing: collect publicly available data on Pubmed and Google Scholar and storing data -- Different types are stored in 3 parts: expression matrix, spatial location, and ROI annotation information (Region of Interest)
- Co-expression analysis: determine relationships between the expression of genes or markers → use Rust
- Cell Distribution Pattern Analysis: examines whether cells are distributed randomly, evenly, or in cluster → use Rust
- Ripley’s cell Distribution Analysis: analyze pattern by calculating the average number of points from difference distance intervals
- Spatial Entropy Analysis
- Spatial Variable Gene Analysis
- Constructing Neighboring Networks: composes from spatial community, cell centrality, cell-cell interaction, spatial co-expression, and spatial autocorrelation
- Spatial Community Analysis: tissue phenotyping - to identify groups of cells that are spatially distinguished
- Cell Centrality Analysis: measures the importance of a cell in network
- Cell-Cell Interaction Analysis: determining by bootstrapping (any test or metric that uses random sampling with replacement)
- Spatial Co-expression Analysis
- Spatial Autocorrelation Analysis: calculates the degree of random spatial distribution of cells (closely together or not)
Framework
- Frontend: Next.js created based on MUI, Echarts.js with WebGL supports for GPU acceleration, store data using IndexedDB
- Backend: (server1) Actix framework written in Rust, (server2) FastAPI written in Python
- See More: https://aquila.cheunglab.org/about
ST viewer: a tool for analysis and visualization of spatial transcriptomics datasets
- Ref: https://github.com/jfnavarro/st_viewer
- Spatial Transcriptomics (ST) is a technique that combines high-resolution imaging with spatially resolved transcriptome-wide sequencing.
- This novel type of data opens up many possibilities for analysis and visualization, most of which are either not available with standard tools or too complex for normal users.
- which allows real-time interaction, analysis and visualization of Spatial Transcriptomics datasets through a seamless and smooth user interface.