scanpy.metrics.gearys_c#
- scanpy.metrics.gearys_c(adata_or_graph, /, vals=None, *, use_graph=None, neighbors_key=None, use=None, layer=None, obsm=None, obsp=None, use_raw=False)[source]#
- scanpy.metrics.gearys_c(graph, /, vals)
- scanpy.metrics.gearys_c(graph, /, vals)
Calculate Geary’s C.
Specifically as used by VISION.
Geary’s C is a measure of autocorrelation for some measure on a graph. This can be to whether measures are correlated between neighboring cells. Lower values indicate greater correlation.
- Parameters:
- adata_or_graph
AnnData|csr_matrix|csr_array AnnData object containing a graph (see
use) or the graph itself. See the examples for more info.- vals
NDArray|spmatrix|sparray|Array|DataFrame|Series|GraphAcc|LayerAcc|MultiAcc|AdRef[Idx2D|int,AnnData] |str|None(default:None) Values to calculate Geary’s C for. If this is two dimensional, should be of shape
(n_features, n_cells). Otherwise should be of shape(n_cells,). Ifadata_or_graphis anAnnData, this can be an accessor, e.g.A.obsm['X_pca']or the 1DA.obs['n_genes'](strs areresolve()d, e.g.'obsm.X_pca'), by defaultA.X.- layer
str|None(default:None) Deprecated since version 1.13.0: Use
vals=A....instead.A key of
layers, i.e.layer='k'isvals=A.layers['k'].- obsm
str|None(default:None) Deprecated since version 1.13.0: Use
vals=A....instead.A key of
obsm, i.e.obsm='k'isvals=A.obsm['k'].- obsp
str|None(default:None) Deprecated since version 1.13.0: Use
vals=A....instead.A key of
obsp, i.e.obsp='k'isvals=A.obsp['k'].- use_raw
bool(default:False) Deprecated since version 1.13.0:
rawis deprecated. Keep the data in a layer instead.Whether to use
adata.raw.Xforvals.- use_graph
str|None(default:None) Deprecated since version 1.13.0: Use
use=A.obsp[...]instead.Key of the graph in
obsp, i.e.use_graph='k'isuse=A.obsp['k'].- neighbors_key
str|None(default:None) Deprecated since version 1.13.0: Use
use=A.obsp[...]instead.Where to look for neighbors connectivities. If not specified, this retrieves
.obsp['connectivities']for connectivities (default storage place forneighbors()). If specified, this retrieves.obsp[.uns[neighbors_key]['connectivities_key']]for connectivities.- use
GraphAcc|str|None(default:None) The neighborhood graph (connectivities) to use, e.g.
A.obsp['k']aftersc.pp.neighbors(adata, out=A.obsp['k']), or any other graph.strs areresolve()d, e.g.'obsp.k'. IfNone, the oneneighbors()wrote by default.
- adata_or_graph
- Return type:
- Returns:
If vals is two dimensional, returns a 1 dimensional ndarray array. Returns a scalar if
valsis 1d.
Examples
Calculate Geary’s C for each components of a dimensionality reduction:
import scanpy as sc, numpy as np from anndata.acc import A pbmc = sc.datasets.pbmc68k_processed() pc_c = sc.metrics.gearys_c(pbmc, A.obsm["X_pca"])
It’s equivalent to call the function directly on the underlying arrays:
alt = sc.metrics.gearys_c(pbmc.obsp["connectivities"], pbmc.obsm["X_pca"].T) np.testing.assert_array_equal(pc_c, alt)