kaleidocell.translate_gene_names#

kaleidocell.translate_gene_names(results_mp, adata, to_col, from_col=None, verbose=True)[source]#

Translate gene names in results_mp using a mapping from adata.var.

Replaces the gene-name index of every MP’s gene-weight Series (results_mp["mp_dict"]) and the row index of results_mp["mp_df"] with the target naming convention. Genes not found in the mapping are kept under their original name.

Parameters:
  • results_mp (dict) – Output of derive_nmf_metaprograms().

  • adata (AnnData) – Dataset whose var table provides the gene name mapping.

  • to_col (str) – Column in adata.var containing the target gene names (e.g. "gene_name" for HGNC symbols).

  • from_col (str or None) – Column in adata.var whose values match the current gene names stored in results_mp. When None (default), the current names are matched against adata.var.index.

  • verbose (bool, default True) – Print a summary of how many genes were successfully translated.

Returns:

Deep copy of results_mp with gene names translated.

Return type:

dict

Examples

Translate Ensembl IDs (stored in the index of adata.var) to HGNC symbols stored in adata.var["gene_name"]:

>>> results_mp_symbols = kaleidocell.translate_gene_names(
...     results_mp, adata, to_col="gene_name"
... )

Translate between two non-index columns:

>>> results_mp_symbols = kaleidocell.translate_gene_names(
...     results_mp, adata,
...     from_col="ensembl_id",
...     to_col="gene_name",
... )