scatrans.save_enrichment_report

scatrans.save_enrichment_report#

scatrans.save_enrichment_report(res, prefix='enrichment', save_excel=True, save_csv=True, save_tsv=False, save_metadata=True, save_term_gene_table=True, index=False)[source]#

Save enrichment results in formats friendly for manuscripts and supplementary materials.

Produces a combination of:
  • {prefix}_results.csv / .tsv / .xlsx (main table; Genes column is semicolon-joined)

  • {prefix}_term_gene_table.csv / .tsv / (in xlsx) (long format: one row per term-gene pair)

  • {prefix}_metadata.json (and a “metadata” sheet in xlsx) (res.attrs + analysis provenance)

List-typed columns (e.g. Genes_list when include_gene_list=True) are automatically converted to semicolon-joined strings for clean CSV/Excel/TSV export.

The parent directory of prefix is created if it does not exist.

Returns a dict with the written file paths, e.g.:
{

“results_csv”: “…_results.csv”, “term_gene_table_csv”: “…_term_gene_table.csv”, “metadata_json”: “…_metadata.json”, “results_xlsx”: “…_results.xlsx”, # plus _tsv variants if save_tsv=True

}

Examples

res = run_kegg(genes, organism=”mouse”, return_all=True, include_gene_list=True) saved = save_enrichment_report(res, prefix=”cluster1_kegg”) # saved keys typically: ‘results_csv’, ‘term_gene_table_csv’, ‘metadata_json’, ‘results_xlsx’

# With TSV (great for Excel locale issues) and auto-created subdir: saved = save_enrichment_report(res, prefix=”results/suppl/cluster1_kegg”, save_tsv=True)

# Long table for network analysis or gene-level follow-up: long_table = expand_enrichment_genes(res) # If from run_go(ontology=”ALL”), long_table will have ‘Ontology’ as first column.

Parameters:
  • res (DataFrame)

  • prefix (str)

  • save_excel (bool)

  • save_csv (bool)

  • save_tsv (bool)

  • save_metadata (bool)

  • save_term_gene_table (bool)

  • index (bool)

Return type:

dict[str, str]