Installation for Pysodb

This tutorial demonstrates how to install the pysodb package in a conda environment.

Installing softwares

1. The first step is to install Anaconda and Visual Studio Code in advance.

Reference tutorials can be found at https://docs.anaconda.com/anaconda/install/index.html and https://docs.anaconda.com/anaconda/user-guide/tasks/integration/vscode/

2. Launch Visual Studio Code and open a terminal window.

Henceforth, various packages or modules will be installed via the command line

Installation pysobd

3. Select the installation path and open it

[ ]:
cd <path>

4. Clone pycodb code

[ ]:
git clone https://github.com/TencentAILabHealthcare/pysodb.git

5. Open the pycodb directory

[ ]:
cd pysodb

6. Create a conda environment

[ ]:
conda env create -n <environment_name> --file pysodb.yml

7. Activate a conda environment

If the conda environment is used on the terminal, run the following command to activate it:

[ ]:
conda activate <environment_name>

8. Install a pysodb package from source code

[ ]:
python setup.py install

9. Install pysodb as a dependency or third-party package with pip

[ ]:
pip install <third-party package>

Usage

The next steps demonstrate usage of the pycodb package via Jupyter.

“Select Kernel” through jupyter, and then select the python environment

import pysodb package

[1]:
import pysodb

Initialization

[2]:
sodb = pysodb.SODB()

Get the list of datasets

[3]:
dataset_list = sodb.list_dataset()

Get the list of datasets with specific category.

categories [“Spatial Transcriptomics”, “Spatial Proteomics”, “Spatial Metabolomics”, “Spatial Genomics”, “Spatial MultiOmics”]

And, take the example of “Spatial Transcriptomics”:

[4]:
dataset_list = sodb.list_dataset_by_category("Spatial Transcriptomics")
dataset_list
[4]:
['maynard2021trans',
 'codeluppi2018spatial',
 'xia2022the',
 'backdahl2021spatial',
 'eng2019transcriptome',
 'berglund2018spatial',
 'Sanchez2021A',
 'thrane2018spatially',
 'Dhainaut2022Spatial',
 'Buzzi2022Spatial',
 'Gouin2021An',
 'Wang2018Three_1k',
 'wang2021easi',
 'lohoff2021integration',
 'chen2020spatial',
 'wang2022high',
 'Sun2022Excitatory',
 'Garcia2021Mapping',
 'ji2020multimodal',
 'Dixon2022Spatially',
 'Zeng2023Integrative',
 'asp2019a',
 'seqFISH_VISp',
 'Wang2018three',
 'rodriques2019slide',
 'chen2021decoding',
 'stickels2020highly',
 'liu2022spatiotemporal',
 'Alon2021Expansion',
 'Allen2022Molecular_lps',
 'chen2022spatiotemporal_compre_20',
 'carlberg2019exploring',
 'zhang2021spatially',
 'Marshall2022High_human',
 'Vickovic2019high_update',
 'scispace',
 'hunter2021spatially',
 'Kadur2022Human',
 'fawkner2021spatiotemporal',
 'stahl2016visualization',
 'ortiz2020molecular',
 'Vickovic2019high',
 'Biermann2022Dissecting',
 'DARTFISH',
 'Marshall2022High_mouse',
 'Allen2022Molecular_aging',
 'Merfish_Visp',
 'Barkley2022Cancer',
 'gracia2021genome',
 'mantri2021spatiotemporal',
 'moffitt2018molecular',
 'Visium_Allen',
 'Wu2022spatial',
 'chen2022spatiotemporal',
 'kvastad2021the',
 'asp2017spatial',
 'wei2022single',
 'Pascual2021Dietary',
 'Fang2022Conservation',
 'Navarro2020Spatial',
 'Joglekar2021A',
 'Konieczny2022Interleukin',
 'guilliams2022spatial',
 'Misra2021Characterizing',
 'bergenstrahle2021super',
 'Tower2021Spatial',
 'he2020integrating',
 'Juntaro2022MEK',
 'Booeshaghi2021Isoform',
 'Zhang2023Amolecularly_rawcount',
 'Shi2022Spatial',
 'parigi2022the',
 'Fu2021Unsupervised',
 'Kleshchevnikov2022Cell2location',
 'xia2019spatial',
 'maniatis2019spatiotemporal',
 'Melo2021Integrating',
 'Shah2016InSitu',
 'Sun2021Integrating',
 'chen2021dissecting',
 'Ratz2022Clonal',
 'hildebrandt2021spatial',
 'Borm2022Scalable',
 'moncada2020integrating',
 'Lebrigand2022The',
 '10x']

Load a specific experiment

Loading a specific experiment needs two arguments, dataset_name and experiment_name.

Two arguments are available at https://gene.ai.tencent.com/SpatialOmics/.

[5]:
adata = sodb.load_experiment('hunter2021spatially','sample_B')
adata
load experiment[sample_B] in dataset[hunter2021spatially]
[5]:
AnnData object with n_obs × n_vars = 2179 × 32268
    obs: 'col_0', 'leiden'
    var: 'gene_ids', 'feature_types', 'genome', 'highly_variable', 'means', 'dispersions', 'dispersions_norm'
    uns: 'hvg', 'leiden', 'leiden_colors', 'log1p', 'moranI', 'neighbors', 'pca', 'spatial_neighbors', 'umap'
    obsm: 'X_pca', 'X_umap', 'spatial', 'spatial_pixel', 'spatial_real'
    varm: 'PCs'
    obsp: 'connectivities', 'distances', 'spatial_connectivities', 'spatial_distances'

Load a specific dataset

[6]:
adataset = sodb.load_dataset('hunter2021spatially')
adataset
load experiment[sample_A] in dataset[hunter2021spatially]
load experiment[sample_C] in dataset[hunter2021spatially]
load experiment[sample_B] in dataset[hunter2021spatially]
[6]:
{'sample_A': AnnData object with n_obs × n_vars = 2425 × 32268
     obs: 'col_0', 'leiden'
     var: 'gene_ids', 'feature_types', 'genome', 'highly_variable', 'means', 'dispersions', 'dispersions_norm'
     uns: 'hvg', 'leiden', 'leiden_colors', 'log1p', 'moranI', 'neighbors', 'pca', 'spatial_neighbors', 'umap'
     obsm: 'X_pca', 'X_umap', 'spatial', 'spatial_pixel', 'spatial_real'
     varm: 'PCs'
     obsp: 'connectivities', 'distances', 'spatial_connectivities', 'spatial_distances',
 'sample_C': AnnData object with n_obs × n_vars = 2677 × 32268
     obs: 'col_0', 'leiden'
     var: 'gene_ids', 'feature_types', 'genome', 'highly_variable', 'means', 'dispersions', 'dispersions_norm'
     uns: 'hvg', 'leiden', 'leiden_colors', 'log1p', 'moranI', 'neighbors', 'pca', 'spatial_neighbors', 'umap'
     obsm: 'X_pca', 'X_umap', 'spatial', 'spatial_pixel', 'spatial_real'
     varm: 'PCs'
     obsp: 'connectivities', 'distances', 'spatial_connectivities', 'spatial_distances',
 'sample_B': AnnData object with n_obs × n_vars = 2179 × 32268
     obs: 'col_0', 'leiden'
     var: 'gene_ids', 'feature_types', 'genome', 'highly_variable', 'means', 'dispersions', 'dispersions_norm'
     uns: 'hvg', 'leiden', 'leiden_colors', 'log1p', 'moranI', 'neighbors', 'pca', 'spatial_neighbors', 'umap'
     obsm: 'X_pca', 'X_umap', 'spatial', 'spatial_pixel', 'spatial_real'
     varm: 'PCs'
     obsp: 'connectivities', 'distances', 'spatial_connectivities', 'spatial_distances'}