arviz.InferenceData.rename_dims#

InferenceData.rename_dims(name_dict=None, groups=None, filter_groups=None, inplace=False)[source]#

Perform xarray renaming of dimensions on all groups.

Loops groups to perform Dataset.rename_dims(name_dict) for every key in name_dict if key is a dimension of the dataset. The renaming is performed on all relevant groups (like posterior, prior, sample stats) while non relevant groups like observed data are omitted. See xarray.Dataset.rename_dims()

Parameters
name_dict: dict

Dictionary whose keys are current dimension names and whose values are the desired names.

groups: str or list of str, optional

Groups where the selection is to be applied. Can either be group names or metagroup names.

filter_groups: {None, “like”, “regex”}, optional, default=None

If None (default), interpret groups as the real group or metagroup names. If “like”, interpret groups as substrings of the real group or metagroup names. If “regex”, interpret groups as regular expressions on the real group or metagroup names. A la pandas.filter.

inplace: bool, optional

If True, modify the InferenceData object inplace, otherwise, return the modified copy.

Returns
InferenceData

A new InferenceData object with renamed dimension by default. When inplace==True perform renaming in-place and return None

See also

xarray.Dataset.rename_dims

Returns a new object with renamed dimensions only.

rename

Perform xarray renaming of variable and dimensions on all groups of an InferenceData object.

rename_vars

Perform xarray renaming of variable or coordinate names on all groups of an InferenceData object.

Examples

Use rename_dims to renaming of dimensions on all groups of the InferenceData object. We first check the dimensions of original object:

In [1]: import arviz as az
   ...: idata = az.load_arviz_data("rugby")
   ...: print(list(idata.posterior.dims))
   ...: print(list(idata.prior.dims))
   ...: 
['chain', 'draw', 'team']
['chain', 'draw', 'team', 'match']

In order to rename the dimensions, we use:

In [2]: idata.rename_dims({"team": "team_new"}, inplace=True)
   ...: print(list(idata.posterior.dims))
   ...: print(list(idata.prior.dims))
   ...: 
['chain', 'draw', 'team_new']
['chain', 'draw', 'team_new', 'match']