metachat.tl.communication_flow
- metachat.tl.communication_flow(adata, database_name=None, sum_metabolites=None, sum_metapathways=None, sum_customerlists=None, sum_ms_pairs=None, spatial_key='spatial', k=5, pos_idx=None, copy=False)[source]
Construct spatial vector fields representing metabolic communication flow.
Parameters
- adataanndata.AnnData
The data matrix of shape
n_obs×n_var. If compute MCC flow from specific metabolites, metapathways or customerlists, please runmc.tl.summary_communication()first.- database_namestr
Name of the Metabolite-Sensor interaction database (e.g.,
"MetaChatDB").- sum_metaboliteslist of str, optional
Specific metabolites to summarize and compute flow for. For example, sum_metabolites = [‘HMDB0000148’,’HMDB0000674’].
- sum_metapathwayslist of str, optional
Specific metabolic pathways to summarize and compute flow for. Example:
['Alanine, aspartate and glutamate metabolism', 'Glycerolipid Metabolism'].- sum_customerlistsdict, optional
Custom metabolite–sensor pair groups to summarize. Example: ``{‘CustomerA’: [(‘HMDB0000148’, ‘Grm5’), (‘HMDB0000148’, ‘Grm8’)],
‘CustomerB’: [(‘HMDB0000674’, ‘Trpc4’), (‘HMDB0000674’, ‘Trpc5’)]}``.
- sum_ms_pairslist of str, optional
Specific metabolite–sensor pairs, e.g.
['HMDB0000148-Grm5'].- spatial_keystr, default=’spatial’
Key in .obsm that contains spatial coordinates.
- kint, default=5
Top-k senders/receivers used for computing the flow direction.
- pos_idxnp.ndarray, optional
Column indices of .obsm[spatial_key] to use for flow computation. Example:
np.array([0, 2])uses x–z coordinates.- copybool, default=False
If True, return a modified copy of adata; otherwise modify in place.
Returns
- anndata.AnnData or None
Adds sender and receiver vector fields to .obsm, for example: -
.obsm['MetaChat-vf-databaseX-sender-HMDB0000148']-.obsm['MetaChat-vf-databaseX-receiver-HMDB0000148']Ifcopy=True, returns the modified AnnData object; otherwise returnsNone.