arviz.InferenceData.rename#

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

Perform xarray renaming of variable and dimensions on all groups.

Loops groups to perform Dataset.rename(name_dict) for every key in name_dict if key is a dimension/data_vars 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()

Parameters:
name_dictdict

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

groupsstr 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

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.

inplacebool, optional

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

Returns:
InferenceData

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

See also

xarray.Dataset.rename

Returns a new object with renamed variables and dimensions.

rename_vars

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

rename_dims

Perform xarray renaming of dimensions on all groups of InferenceData object.

Examples

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

import arviz as az
idata = az.load_arviz_data("rugby")
idata
arviz.InferenceData
    • <xarray.Dataset> Size: 452kB
      Dimensions:    (chain: 4, draw: 500, team: 6)
      Coordinates:
        * chain      (chain) int64 32B 0 1 2 3
        * draw       (draw) int64 4kB 0 1 2 3 4 5 6 7 ... 493 494 495 496 497 498 499
        * team       (team) <U8 192B 'Wales' 'France' 'Ireland' ... 'Italy' 'England'
      Data variables:
          home       (chain, draw) float64 16kB ...
          intercept  (chain, draw) float64 16kB ...
          atts_star  (chain, draw, team) float64 96kB ...
          defs_star  (chain, draw, team) float64 96kB ...
          sd_att     (chain, draw) float64 16kB ...
          sd_def     (chain, draw) float64 16kB ...
          atts       (chain, draw, team) float64 96kB ...
          defs       (chain, draw, team) float64 96kB ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.545143
          inference_library:          pymc3
          inference_library_version:  3.7

    • <xarray.Dataset> Size: 2MB
      Dimensions:      (chain: 4, draw: 500, match: 60)
      Coordinates:
        * chain        (chain) int64 32B 0 1 2 3
        * draw         (draw) int64 4kB 0 1 2 3 4 5 6 ... 493 494 495 496 497 498 499
        * match        (match) <U16 4kB 'Wales Italy' ... 'Ireland England'
      Data variables:
          home_points  (chain, draw, match) int64 960kB ...
          away_points  (chain, draw, match) int64 960kB ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.563854
          inference_library:          pymc3
          inference_library_version:  3.7

    • <xarray.Dataset> Size: 152kB
      Dimensions:           (chain: 4, draw: 500)
      Coordinates:
        * chain             (chain) int64 32B 0 1 2 3
        * draw              (draw) int64 4kB 0 1 2 3 4 5 6 ... 494 495 496 497 498 499
      Data variables:
          energy_error      (chain, draw) float64 16kB ...
          energy            (chain, draw) float64 16kB ...
          tree_size         (chain, draw) float64 16kB ...
          tune              (chain, draw) bool 2kB ...
          mean_tree_accept  (chain, draw) float64 16kB ...
          lp                (chain, draw) float64 16kB ...
          depth             (chain, draw) int64 16kB ...
          max_energy_error  (chain, draw) float64 16kB ...
          step_size         (chain, draw) float64 16kB ...
          step_size_bar     (chain, draw) float64 16kB ...
          diverging         (chain, draw) bool 2kB ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.555203
          inference_library:          pymc3
          inference_library_version:  3.7

    • <xarray.Dataset> Size: 608kB
      Dimensions:       (chain: 1, draw: 500, team: 6, match: 60)
      Coordinates:
        * chain         (chain) int64 8B 0
        * draw          (draw) int64 4kB 0 1 2 3 4 5 6 ... 493 494 495 496 497 498 499
        * team          (team) <U8 192B 'Wales' 'France' ... 'Italy' 'England'
        * match         (match) <U16 4kB 'Wales Italy' ... 'Ireland England'
      Data variables:
          sd_att_log__  (chain, draw) float64 4kB ...
          intercept     (chain, draw) float64 4kB ...
          atts_star     (chain, draw, team) float64 24kB ...
          defs_star     (chain, draw, team) float64 24kB ...
          away_points   (chain, draw, match) int64 240kB ...
          sd_att        (chain, draw) float64 4kB ...
          sd_def_log__  (chain, draw) float64 4kB ...
          home          (chain, draw) float64 4kB ...
          atts          (chain, draw, team) float64 24kB ...
          sd_def        (chain, draw) float64 4kB ...
          home_points   (chain, draw, match) int64 240kB ...
          defs          (chain, draw, team) float64 24kB ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.573731
          inference_library:          pymc3
          inference_library_version:  3.7

    • <xarray.Dataset> Size: 5kB
      Dimensions:      (match: 60)
      Coordinates:
        * match        (match) <U16 4kB 'Wales Italy' ... 'Ireland England'
      Data variables:
          home_points  (match) float64 480B ...
          away_points  (match) float64 480B ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.581293
          inference_library:          pymc3
          inference_library_version:  3.7

In order to rename the dimensions and variable, we use:

idata.rename({"team": "team_new", "match":"match_new"}, inplace=True)
idata
arviz.InferenceData
    • <xarray.Dataset> Size: 452kB
      Dimensions:    (chain: 4, draw: 500, team_new: 6)
      Coordinates:
        * chain      (chain) int64 32B 0 1 2 3
        * draw       (draw) int64 4kB 0 1 2 3 4 5 6 7 ... 493 494 495 496 497 498 499
        * team_new   (team_new) <U8 192B 'Wales' 'France' ... 'Italy' 'England'
      Data variables:
          home       (chain, draw) float64 16kB ...
          intercept  (chain, draw) float64 16kB ...
          atts_star  (chain, draw, team_new) float64 96kB ...
          defs_star  (chain, draw, team_new) float64 96kB ...
          sd_att     (chain, draw) float64 16kB ...
          sd_def     (chain, draw) float64 16kB ...
          atts       (chain, draw, team_new) float64 96kB ...
          defs       (chain, draw, team_new) float64 96kB ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.545143
          inference_library:          pymc3
          inference_library_version:  3.7

    • <xarray.Dataset> Size: 2MB
      Dimensions:      (chain: 4, draw: 500, match_new: 60)
      Coordinates:
        * chain        (chain) int64 32B 0 1 2 3
        * draw         (draw) int64 4kB 0 1 2 3 4 5 6 ... 493 494 495 496 497 498 499
        * match_new    (match_new) <U16 4kB 'Wales Italy' ... 'Ireland England'
      Data variables:
          home_points  (chain, draw, match_new) int64 960kB ...
          away_points  (chain, draw, match_new) int64 960kB ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.563854
          inference_library:          pymc3
          inference_library_version:  3.7

    • <xarray.Dataset> Size: 152kB
      Dimensions:           (chain: 4, draw: 500)
      Coordinates:
        * chain             (chain) int64 32B 0 1 2 3
        * draw              (draw) int64 4kB 0 1 2 3 4 5 6 ... 494 495 496 497 498 499
      Data variables:
          energy_error      (chain, draw) float64 16kB ...
          energy            (chain, draw) float64 16kB ...
          tree_size         (chain, draw) float64 16kB ...
          tune              (chain, draw) bool 2kB ...
          mean_tree_accept  (chain, draw) float64 16kB ...
          lp                (chain, draw) float64 16kB ...
          depth             (chain, draw) int64 16kB ...
          max_energy_error  (chain, draw) float64 16kB ...
          step_size         (chain, draw) float64 16kB ...
          step_size_bar     (chain, draw) float64 16kB ...
          diverging         (chain, draw) bool 2kB ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.555203
          inference_library:          pymc3
          inference_library_version:  3.7

    • <xarray.Dataset> Size: 608kB
      Dimensions:       (chain: 1, draw: 500, team_new: 6, match_new: 60)
      Coordinates:
        * chain         (chain) int64 8B 0
        * draw          (draw) int64 4kB 0 1 2 3 4 5 6 ... 493 494 495 496 497 498 499
        * team_new      (team_new) <U8 192B 'Wales' 'France' ... 'Italy' 'England'
        * match_new     (match_new) <U16 4kB 'Wales Italy' ... 'Ireland England'
      Data variables:
          sd_att_log__  (chain, draw) float64 4kB ...
          intercept     (chain, draw) float64 4kB ...
          atts_star     (chain, draw, team_new) float64 24kB ...
          defs_star     (chain, draw, team_new) float64 24kB ...
          away_points   (chain, draw, match_new) int64 240kB ...
          sd_att        (chain, draw) float64 4kB ...
          sd_def_log__  (chain, draw) float64 4kB ...
          home          (chain, draw) float64 4kB ...
          atts          (chain, draw, team_new) float64 24kB ...
          sd_def        (chain, draw) float64 4kB ...
          home_points   (chain, draw, match_new) int64 240kB ...
          defs          (chain, draw, team_new) float64 24kB ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.573731
          inference_library:          pymc3
          inference_library_version:  3.7

    • <xarray.Dataset> Size: 5kB
      Dimensions:      (match_new: 60)
      Coordinates:
        * match_new    (match_new) <U16 4kB 'Wales Italy' ... 'Ireland England'
      Data variables:
          home_points  (match_new) float64 480B ...
          away_points  (match_new) float64 480B ...
      Attributes:
          created_at:                 2019-07-12T20:31:53.581293
          inference_library:          pymc3
          inference_library_version:  3.7