Tutorial 4: 2D dataset

Import necessary modules

[ ]:
import scanpy as sc
from sklearn import metrics
import pandas as pd
from sklearn import mixture
import warnings
warnings.filterwarnings("ignore")
import numpy as np
import matplotlib.pyplot as plt
import os
import sys
from sklearn.metrics.cluster import adjusted_rand_score
from sklearn.metrics import normalized_mutual_info_score
import FlatST
import tracemalloc
import time
# os.environ['R_HOME'] = '/mnt/mydisk/home/chenxd/.conda/envs/r_env/lib/R'

Read the clustered dataset

[2]:
# adata = sc.read_h5ad('/mnt/mydisk/home/chenxd/lwfx/res/DLPCF/FlatST_151673_83.h5ad')
# adata = sc.read_h5ad('/mnt/mydisk/home/chenxd/lwfx/res/Breast_Cancer/FlatST_Breast_Cancer.h5ad')
adata = sc.read_h5ad('/mnt/mydisk/home/chenxd/lwfx/res/STARmap/FlatST_STARmap_20180505_BY3_1k_.h5ad')
# adata = sc.read_h5ad('/mnt/mydisk/home/chenxd/lwfx/res/MOSTA/STAGATE_E14.5_E1S1.MOSTA.h5ad')
adata = adata[~adata.obs.isna().any(axis=1)].copy()
adata.uns['ari']
[2]:
array([0.59272067, 0.60421286, 0.61296148, 0.59650268, 0.57365635,
       0.57061146, 0.60986405, 0.5691533 , 0.60228385, 0.60243199])

Calculate the overall IoU

[3]:
FlatST.plot_region_boundaries(adata,'pred_3')
_images/Tutorial_4_2D_6_0.png

Calculate the IoU of a single region

[4]:
FlatST.plot_single_region_boundary(adata,'L5','pred_3')
_images/Tutorial_4_2D_8_0.png
[5]:
FlatST.plot_all_regions_boundaries(adata,'pred_3')
_images/Tutorial_4_2D_9_0.png