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'}