smftools.tools.calculate_knn#
- smftools.tools.calculate_knn(adata, obsm='X_pca', knn_neighbors=100, overwrite=True, threads=8, random_state=0, symmetrize=True)#
Compute a KNN distance graph on an embedding in adata.obsm[obsm].
- Stores:
adata.obsp[f"knn_distances_{obsm}"] : CSR sparse matrix of distances
adata.uns[f"knn_distances_{obsm}"]["params"] : metadata
- Parameters:
adata (
AnnData) -- AnnData object to update.obsm (
str(default:'X_pca')) -- Key in adata.obsm to use as the embedding.knn_neighbors (
int(default:100)) -- Target number of neighbors (will be clipped to n_obs-1).overwrite (
bool(default:True)) -- If False and graph exists, do nothing.threads (
int(default:8)) -- Parallel jobs for pynndescent.random_state (
int|None(default:0)) -- Seed for pynndescent.symmetrize (
bool(default:True)) -- If True, make distance graph symmetric via min(A, A.T).
- Return type:
AnnData- Returns:
Updated AnnData.