liana.method.MistyData#
- class liana.method.MistyData(data, obs=None, spatial_key='spatial', enforce_obs=True, **kwargs)#
MistyData Class used to construct multi-view objects.
Construct a MistyData object from a dictionary of views (anndatas).
- Parameters:
data (
dict|MuData) – Dictionary of views (AnnData`s) or a `MuDataobject. Note that only thedata.Xattribute is used. An intra-view called “intra” is required.obs (
DataFrame|None(default:None)) – DataFrame of observations. If None, the obs of the intra-view is used.spatial_key (
str(default:'spatial')) – Key inadata.obsmthat contains the spatial coordinates. Default is'spatial'.enforce_obs (
bool(default:True)) – If True, the number of observations in each extra-view must match the intra-view. Then the connectivities are stored in the .obsp attribute, while the weighted matrix is stored in .layers[‘weighted’]. If False, the connectivities are stored in the .obsm attribute, while the weighted matrix is transposed and stored in .varm[‘weighted’].**kwargs – Keyword arguments passed to the MuData Super class
- view_names#
List of names of the different views
- spatial_key#
Key in
data.obsmcontaining the spatial coordinates.
- enforce_obs#
See parameter with the same name.
- obs#
See parameter with the same name.
Attributes table#
MuData axis |
|
Filename of the MuData object. |
|
Whether the MuData object is backed. |
|
Names of modalities (alias for |
|
Number of modalities in the MuData object. |
|
Total number of observations |
|
Total number of variables |
|
Total number of variables |
|
Annotation of observation |
|
Names of variables (alias for |
|
Multi-dimensional annotation of observation |
|
Mapping of observation index in the MuData to indices in individual modalities. |
|
Pairwise annotatation of observations |
|
Shape of data, all variables and observations combined ( |
|
Unstructured annotation (ordered dictionary). |
|
Annotation of variables |
|
Names of variables (alias for |
|
Multi-dimensional annotation of variables |
|
Mapping of feature index in the MuData to indices in individual modalities. |
|
Pairwise annotatation of variables |
Methods table#
|
Make a copy. |
|
Returns the weighted matrix for a given set of predictors in a view. |
|
|
|
List keys of observation annotation |
Call .obs_names_make_unique() method on each AnnData object. |
|
|
Return an array of values for the requested key of length n_obs |
List keys of observation annotation |
|
|
Copy the data from the modalities to the global .obs, existing columns to be overwritten or updated |
|
Copy the data from the modalities to the global .var, existing columns to be overwritten or updated |
|
Copy the data from the mdata.obs to the modalities, existing columns to be overwritten |
|
Copy the data from the mdata.var to the modalities, existing columns to be overwritten |
|
Transform string columns in .var and .obs slots of MuData to categorical as well as of .var and .obs slots in each AnnData object |
|
Convert MuData to AnnData |
|
List keys of unstructured annotation. |
|
Update both .obs and .var indices of MuData with the data from all the modalities |
Update global .obs_names according to the .obs_names of all the modalities. |
|
Update global .var_names according to the .var_names of all the modalities. |
|
|
List keys of variable annotation |
Call .var_names_make_unique() method on each AnnData object. |
|
|
Return an array of values for the requested key of length n_var |
List keys of variable annotation |
|
|
Write MuData object to an HDF5 file |
|
Write MuData object to an HDF5 file |
|
Write MuData object to a Zarr store |
Attributes#
- MistyData.axis#
MuData axis
- MistyData.filename#
Filename of the MuData object.
- Returns:
Path | None: The path to the file if backed, None otherwise.
- MistyData.isbacked#
Whether the MuData object is backed.
- Returns:
bool: True if the object is backed, False otherwise.
- MistyData.mod_names#
Names of modalities (alias for
list(mdata.mod.keys()))This property is read-only.
- MistyData.n_mod#
Number of modalities in the MuData object.
- Returns:
int: The number of modalities.
- MistyData.n_obs#
Total number of observations
- MistyData.n_var#
Total number of variables
- MistyData.n_vars#
Total number of variables
- MistyData.obs#
Annotation of observation
- MistyData.obs_names#
Names of variables (alias for
.obs.index)
- MistyData.obsm#
Multi-dimensional annotation of observation
- MistyData.obsmap#
Mapping of observation index in the MuData to indices in individual modalities.
1-based, 0 indicates that the corresponding observation is missing in the respective modality.
- MistyData.obsp#
Pairwise annotatation of observations
- MistyData.uns#
Unstructured annotation (ordered dictionary).
- MistyData.var#
Annotation of variables
- MistyData.var_names#
Names of variables (alias for
.var.index)
- MistyData.varm#
Multi-dimensional annotation of variables
- MistyData.varmap#
Mapping of feature index in the MuData to indices in individual modalities.
1-based, 0 indicates that the corresponding observation is missing in the respective modality.
- MistyData.varp#
Pairwise annotatation of variables
Methods#
- MistyData.copy(filename=None)#
Make a copy.
- MistyData.get_weighted_matrix(view_name, predictors=None)#
Returns the weighted matrix for a given set of predictors in a view.
- Parameters:
- Return type:
Index|ndarray- Returns:
Weighted matrix of the requested view and predictors. If no predictors are provided, returns the variable names.
- MistyData.obs_names_make_unique()#
Call .obs_names_make_unique() method on each AnnData object.
If there are obs_names, which are the same for multiple modalities, append modality name to all obs_names.
- MistyData.obs_vector(key, layer=None)#
Return an array of values for the requested key of length n_obs
- Return type:
- MistyData.pull_obs(columns=None, mods=None, common=None, join_common=None, nonunique=None, join_nonunique=None, unique=None, prefix_unique=True, drop=False, only_drop=False)#
Copy the data from the modalities to the global .obs, existing columns to be overwritten or updated
- Parameters:
columns (
list[str] |None(default:None)) – List of columns to pull from the modalities’ .obs tablescommon (
bool|None(default:None)) – If True, pull common columns. Common columns do not have modality prefixes. Pull from all modalities. Cannot be used with columns. True by default.mods (
list[str] |None(default:None)) – List of modalities to pull from.join_common (
bool|None(default:None)) – If True, attempt to join common columns. Common columns are present in all modalities. True for MuData wth axis=1 (shared var). False for MuData with axis=0 and axis=-1. Cannot be used with mods, or for shared attr.nonunique (
bool|None(default:None)) – If True, pull columns that have a modality prefix such that there are multiple columns with the same name and different prefix. Cannot be used with columns or mods. True by default.join_nonunique (
bool|None(default:None)) – If True, attempt to join non-unique columns. Intended usage is the same as for join_common. Cannot be used with mods, or for shared attr. False by default.unique (
bool|None(default:None)) – If True, pull columns that have a modality prefix such that there is no other column with the same name and a different modality prefix. Cannot be used with columns or mods. True by default.prefix_unique (
bool|None(default:True)) – If True, prefix unique column names with modname (default). No prefix when False.drop (
bool(default:False)) – If True, drop the columns from the modalities after pulling.only_drop (
bool(default:False)) – If True, drop the columns but do not actually pull them. Forces drop=True.
- MistyData.pull_var(columns=None, mods=None, common=None, join_common=None, nonunique=None, join_nonunique=None, unique=None, prefix_unique=True, drop=False, only_drop=False)#
Copy the data from the modalities to the global .var, existing columns to be overwritten or updated
- Parameters:
columns (
list[str] |None(default:None)) – List of columns to pull from the modalities’ .var tablescommon (
bool|None(default:None)) – If True, pull common columns. Common columns do not have modality prefixes. Pull from all modalities. Cannot be used with columns. True by default.mods (
list[str] |None(default:None)) – List of modalities to pull from.join_common (
bool|None(default:None)) – If True, attempt to join common columns. Common columns are present in all modalities. True for MuData with axis=0 (shared obs). False for MuData with axis=1 and axis=-1. Cannot be used with mods, or for shared attr.nonunique (
bool|None(default:None)) – If True, pull columns that have a modality prefix such that there are multiple columns with the same name and different prefix. Cannot be used with columns or mods. True by default.join_nonunique (
bool|None(default:None)) – If True, attempt to join non-unique columns. Intended usage is the same as for join_common. Cannot be used with mods, or for shared attr. False by default.unique (
bool|None(default:None)) – If True, pull columns that have a modality prefix such that there is no other column with the same name and a different modality prefix. Cannot be used with columns or mods. True by default.prefix_unique (
bool|None(default:True)) – If True, prefix unique column names with modname (default). No prefix when False.drop (
bool(default:False)) – If True, drop the columns from the modalities after pulling.only_drop (
bool(default:False)) – If True, drop the columns but do not actually pull them. Forces drop=True.
- MistyData.push_obs(columns=None, mods=None, common=None, prefixed=None, drop=False, only_drop=False)#
Copy the data from the mdata.obs to the modalities, existing columns to be overwritten
- Parameters:
columns (
list[str] |None(default:None)) – List of columns to pushmods (
list[str] |None(default:None)) – List of modalities to push tocommon (
bool|None(default:None)) – If True, push common columns. Common columns do not have modality prefixes. Push to each modality unless all values for a modality are null. Cannot be used with columns. True by default.prefixed (
bool|None(default:None)) – If True, push columns that have a modality prefix. which are prefixed by modality names. Only push to the respective modality names. Cannot be used with columns. True by default.drop (
bool(default:False)) – If True, drop the columns from the global .obs after pushing. False by default.only_drop (
bool(default:False)) – If True, drop the columns but do not actually pull them. Forces drop=True. False by default.
- MistyData.push_var(columns=None, mods=None, common=None, prefixed=None, drop=False, only_drop=False)#
Copy the data from the mdata.var to the modalities, existing columns to be overwritten
- Parameters:
columns (
list[str] |None(default:None)) – List of columns to pushmods (
list[str] |None(default:None)) – List of modalities to push tocommon (
bool|None(default:None)) – If True, push common columns. Common columns do not have modality prefixes. Push to each modality unless all values for a modality are null. Cannot be used with columns. True by default.prefixed (
bool|None(default:None)) – If True, push columns that have a modality prefix. which are prefixed by modality names. Only push to the respective modality names. Cannot be used with columns. True by default.drop (
bool(default:False)) – If True, drop the columns from the global .var after pushing. False by default.only_drop (
bool(default:False)) – If True, drop the columns but do not actually pull them. Forces drop=True. False by default.
- MistyData.strings_to_categoricals(df=None)#
Transform string columns in .var and .obs slots of MuData to categorical as well as of .var and .obs slots in each AnnData object
This keeps it compatible with AnnData.strings_to_categoricals() method.
- MistyData.to_anndata(**kwargs)#
Convert MuData to AnnData
If mdata.axis == 0 (shared observations), concatenate modalities along axis 1 (
anndata.concat(axis=1)). If mdata.axis == 1 (shared variables), concatenate datasets along axis 0 (anndata.concat(axis=0)).See
anndata.concat()documentation for more details.
- MistyData.update()#
Update both .obs and .var indices of MuData with the data from all the modalities
NOTE: From v0.4, it will not pull columns from modalities by default.
- MistyData.update_obs()#
Update global .obs_names according to the .obs_names of all the modalities.
- MistyData.update_var()#
Update global .var_names according to the .var_names of all the modalities.
- MistyData.var_names_make_unique()#
Call .var_names_make_unique() method on each AnnData object.
If there are var_names, which are the same for multiple modalities, append modality name to all var_names.
- MistyData.var_vector(key, layer=None)#
Return an array of values for the requested key of length n_var
- Return type:
- MistyData.write(filename=None, **kwargs)#
Write MuData object to an HDF5 file
- MistyData.write_h5mu(filename=None, **kwargs)#
Write MuData object to an HDF5 file
- MistyData.write_zarr(store, **kwargs)#
Write MuData object to a Zarr store