symphonypy.pp.harmony_integrate

symphonypy.pp.harmony_integrate(adata: AnnData, key: list[str] | str, flavor: str = 'python', ref_basis_source: str = 'X_pca', ref_basis_adjusted: str = 'X_pca_harmony', ref_basis_loadings: str = 'PCs', verbose: bool = False, random_seed: int = 1, **harmony_kwargs)

Run Harmony batch correction on adata, save corrected output to adata.obsm, save all the necessary to Symphony mapping algorithm parameters to adata.uns

Parameters:
  • adata (AnnData) – adata object with batch

  • key (list[str] | str) – which columns from adata.obs to use as batch keys (vars_use parameter of Harmony)

  • flavor (str, optional) – if to run harmonypy or Harmony via rpy2, defaults to “python”

  • ref_basis_source (str, optional) – adata.obsm[ref_basis_source] will be used as input embedding to Harmony, defaults to “X_pca”

  • ref_basis_adjusted (str, optional) – slot where to put corrected coordinates, defaults to “X_pca_harmony”

  • ref_basis_loadings (str, optional) – slot with feature loadings to the original embedding, defaults to “PCs”

  • verbose (bool, optional) – if to print logs of steps of integration, defaults to False

  • random_seed (int, optional) – random seed, defaults to 1