msmu.pp.add_meta
Attach metadata by exact matching of one metadata key to one observation key.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mdata
|
MuData
|
|
required |
metadata
|
DataFrame | str | PathLike[str]
|
|
required |
format
|
Literal['dataframe', 'df', 'generic', 'csv', 'tsv', 'parquet', 'sdrf'] | None
|
|
None
|
metadata_on
|
str | Sequence[str] | None
|
Metadata join column; |
None
|
match_columns
|
str | Sequence[str] | None
|
Alias of |
None
|
obs_columns
|
str | Sequence[str] | None
|
Join column in each modality |
None
|
validate_sdrf
|
bool
|
Validate SDRF input when using SDRF format. |
True
|
skip_ontology
|
bool
|
Skip ontology checks during SDRF validation. |
True
|
Returns:
| Type | Description |
|---|---|
MuData
|
A new |
Notes
Metadata must be nonempty with unique columns and unique non-null join keys. Each modality must have at least one matching row; unmatched rows receive missing metadata. Existing non-null annotations take precedence; only gaps are filled. For separate SDRF storage/application, see attach_sdrf and apply_sdrf_to_obs.
Examples:
import msmu as mm
import pandas as pd
metadata = pd.DataFrame({"condition": ["control"] * mdata.n_obs}, index=mdata.obs_names)
mdata = mm.pp.add_meta(mdata, metadata)