Skip to content

msmu.dt.assign

Assign a column in place and record its values for replay.

Equivalent to mdata[modality].var[column] = values (or .obs), or to mdata[modality].uns["decoy"][column] = values with on="decoy". pandas handles scalar broadcasting, positional arrays, and Series index alignment. Returns the same MuData. Values are stored in full in provenance; the computation that produced them is not recorded.

Parameters:

Name Type Description Default
mdata MuData

MuData to modify.

required
column str

Destination column name; an existing column is overwritten.

required
values Any

Scalar, positional array, or pandas Series. Series align by index. Values are captured in full for replay.

required
modality str

Modality containing the target table.

required
on Literal['obs', 'var', 'decoy']

"var", "obs", or "decoy" for the decoy table in .uns["decoy"], which add_filter requires to carry every column a variable filter uses.

'var'

Returns:

Type Description
MuData

The same MuData, modified in place.

Examples:

import msmu as mm
mm.dt.assign(mdata, "reviewed", True, modality="protein")
mm.dt.assign(mdata, "n_missing", 0, modality="protein", on="decoy")