Methods for targeted spatial transcriptomic analysis hold particular promise in analysis of complex tissues. Most such methods, however, measure only a limited panel of transcripts, which need to be selected in advance to inform on the cell types or processes being studied.
Here we describe gpsFISH, a computational method to perform such selection in a way that optimizes detection of previously annotated cell types or cell type hierarchies. We show systematic difference of transcript detection rates between different technologies, which distorts the resulting transcriptional profile estimates. Such distortions reduce the resulting ability to distinguish cell types in the targeted spatial transcriptomics data relative to what would be expected from scRNA-seq data. gpsFISH was designed to model and adjust for the platform effects, yielding more informative gene panels and better cell type classification. In addition, gpsFISH can incorporate the hierarchical structure of cell types to better account for complex cell type relationships. Finally, we observed a high redundancy of gene panels, and extended gpsFISH to incorporate custom gene preferences. Overall, gpsFISH outperforms other gene selection methods, improving support for hierarchical cell classification as well as flexible options to accommodate diverse design requirements.
To use gpsFISH from GitHub, install with the following:
install.packages('devtools')
devtools::install_github("kharchenkolab/gpsFISH")
To install the development version (faster version) of gpsFISH:
install.packages('devtools')
devtools::install_github(repo = 'kharchenkolab/gpsFISH', ref = 'devel')
GSL libraries need to be installed to use the development version. It is inherited from Rfast
.
To install system dependencies using apt-get
, use the following:
sudo apt-get install libgsl-dev
For Red Hat distributions using yum
, use the following command:
sudo yum -y install gsl
Using the Mac OS package manager Homebrew, try the following command:
brew install gsl
Please see the following tutorials for detailed examples of how to use gpsFISH:
If you find gpsFISH useful for your publication, please cite: