arviz.InferenceData.rename_vars#

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

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

Loops groups to perform Dataset.rename_vars(name_dict) for every key in name_dict if key is a variable or coordinate names 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_vars()

Parameters:
name_dictdict

Dictionary whose keys are current variable or coordinate 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 with renamed variables including coordinates by default. When inplace==True perform renaming in-place and return None

See also

xarray.Dataset.rename_vars

Returns a new object with renamed variables including coordinates.

rename

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

rename_dims

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

Examples

Use rename_vars to renaming of variable and coordinates on all groups of the InferenceData object. We first check the data variables of 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:                 2024-03-06T20:46:23.841916
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9
          sampling_time:              8.503105401992798
          tuning_steps:               1000

    • <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'
          home_team    (match) <U8 2kB ...
          away_team    (match) <U8 2kB ...
      Data variables:
          home_points  (chain, draw, match) int64 960kB ...
          away_points  (chain, draw, match) int64 960kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:25.689246
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <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'
          home_team    (match) <U8 2kB ...
          away_team    (match) <U8 2kB ...
      Data variables:
          home_points  (chain, draw, match) float64 960kB ...
          away_points  (chain, draw, match) float64 960kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:24.120642
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 260kB
      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 ...
          sd_att     (chain, draw) float64 16kB ...
          sd_def     (chain, draw) float64 16kB ...
          intercept  (chain, draw) float64 16kB ...
          atts_star  (chain, draw, team) float64 96kB ...
          defs_star  (chain, draw, team) float64 96kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:24.377610
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 248kB
      Dimensions:                (chain: 4, draw: 500)
      Coordinates:
        * chain                  (chain) int64 32B 0 1 2 3
        * draw                   (draw) int64 4kB 0 1 2 3 4 5 ... 495 496 497 498 499
      Data variables: (12/17)
          max_energy_error       (chain, draw) float64 16kB ...
          index_in_trajectory    (chain, draw) int64 16kB ...
          smallest_eigval        (chain, draw) float64 16kB ...
          perf_counter_start     (chain, draw) float64 16kB ...
          largest_eigval         (chain, draw) float64 16kB ...
          step_size              (chain, draw) float64 16kB ...
          ...                     ...
          reached_max_treedepth  (chain, draw) bool 2kB ...
          perf_counter_diff      (chain, draw) float64 16kB ...
          tree_depth             (chain, draw) int64 16kB ...
          process_time_diff      (chain, draw) float64 16kB ...
          step_size_bar          (chain, draw) float64 16kB ...
          energy                 (chain, draw) float64 16kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:23.854033
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9
          sampling_time:              8.503105401992798
          tuning_steps:               1000

    • <xarray.Dataset> Size: 116kB
      Dimensions:    (chain: 1, draw: 500, team: 6)
      Coordinates:
        * chain      (chain) int64 8B 0
        * 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:
          atts_star  (chain, draw, team) float64 24kB ...
          sd_att     (chain, draw) float64 4kB ...
          atts       (chain, draw, team) float64 24kB ...
          sd_def     (chain, draw) float64 4kB ...
          defs       (chain, draw, team) float64 24kB ...
          intercept  (chain, draw) float64 4kB ...
          home       (chain, draw) float64 4kB ...
          defs_star  (chain, draw, team) float64 24kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:09.475945
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 492kB
      Dimensions:      (chain: 1, draw: 500, 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
        * match        (match) <U16 4kB 'Wales Italy' ... 'Ireland England'
          home_team    (match) <U8 2kB ...
          away_team    (match) <U8 2kB ...
      Data variables:
          away_points  (chain, draw, match) int64 240kB ...
          home_points  (chain, draw, match) int64 240kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:09.479330
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 9kB
      Dimensions:      (match: 60)
      Coordinates:
        * match        (match) <U16 4kB 'Wales Italy' ... 'Ireland England'
          home_team    (match) <U8 2kB ...
          away_team    (match) <U8 2kB ...
      Data variables:
          home_points  (match) int64 480B ...
          away_points  (match) int64 480B ...
      Attributes:
          created_at:                 2024-03-06T20:46:09.480812
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 36kB
      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 7 ... 493 494 495 496 497 498 499
      Data variables:
          sd_att   (chain, draw) float64 16kB ...
          sd_def   (chain, draw) float64 16kB ...
      Attributes:
          sd_att:   pymc.logprob.transforms.LogTransform
          sd_def:   pymc.logprob.transforms.LogTransform

In order to rename the data variables, we use:

idata.rename_vars({"home": "home_new"}, inplace=True)
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_new   (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:                 2024-03-06T20:46:23.841916
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9
          sampling_time:              8.503105401992798
          tuning_steps:               1000

    • <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'
          home_team    (match) <U8 2kB ...
          away_team    (match) <U8 2kB ...
      Data variables:
          home_points  (chain, draw, match) int64 960kB ...
          away_points  (chain, draw, match) int64 960kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:25.689246
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <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'
          home_team    (match) <U8 2kB ...
          away_team    (match) <U8 2kB ...
      Data variables:
          home_points  (chain, draw, match) float64 960kB ...
          away_points  (chain, draw, match) float64 960kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:24.120642
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 260kB
      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_new   (chain, draw) float64 16kB ...
          sd_att     (chain, draw) float64 16kB ...
          sd_def     (chain, draw) float64 16kB ...
          intercept  (chain, draw) float64 16kB ...
          atts_star  (chain, draw, team) float64 96kB ...
          defs_star  (chain, draw, team) float64 96kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:24.377610
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 248kB
      Dimensions:                (chain: 4, draw: 500)
      Coordinates:
        * chain                  (chain) int64 32B 0 1 2 3
        * draw                   (draw) int64 4kB 0 1 2 3 4 5 ... 495 496 497 498 499
      Data variables: (12/17)
          max_energy_error       (chain, draw) float64 16kB ...
          index_in_trajectory    (chain, draw) int64 16kB ...
          smallest_eigval        (chain, draw) float64 16kB ...
          perf_counter_start     (chain, draw) float64 16kB ...
          largest_eigval         (chain, draw) float64 16kB ...
          step_size              (chain, draw) float64 16kB ...
          ...                     ...
          reached_max_treedepth  (chain, draw) bool 2kB ...
          perf_counter_diff      (chain, draw) float64 16kB ...
          tree_depth             (chain, draw) int64 16kB ...
          process_time_diff      (chain, draw) float64 16kB ...
          step_size_bar          (chain, draw) float64 16kB ...
          energy                 (chain, draw) float64 16kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:23.854033
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9
          sampling_time:              8.503105401992798
          tuning_steps:               1000

    • <xarray.Dataset> Size: 116kB
      Dimensions:    (chain: 1, draw: 500, team: 6)
      Coordinates:
        * chain      (chain) int64 8B 0
        * 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:
          atts_star  (chain, draw, team) float64 24kB ...
          sd_att     (chain, draw) float64 4kB ...
          atts       (chain, draw, team) float64 24kB ...
          sd_def     (chain, draw) float64 4kB ...
          defs       (chain, draw, team) float64 24kB ...
          intercept  (chain, draw) float64 4kB ...
          home_new   (chain, draw) float64 4kB ...
          defs_star  (chain, draw, team) float64 24kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:09.475945
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 492kB
      Dimensions:      (chain: 1, draw: 500, 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
        * match        (match) <U16 4kB 'Wales Italy' ... 'Ireland England'
          home_team    (match) <U8 2kB ...
          away_team    (match) <U8 2kB ...
      Data variables:
          away_points  (chain, draw, match) int64 240kB ...
          home_points  (chain, draw, match) int64 240kB ...
      Attributes:
          created_at:                 2024-03-06T20:46:09.479330
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 9kB
      Dimensions:      (match: 60)
      Coordinates:
        * match        (match) <U16 4kB 'Wales Italy' ... 'Ireland England'
          home_team    (match) <U8 2kB ...
          away_team    (match) <U8 2kB ...
      Data variables:
          home_points  (match) int64 480B ...
          away_points  (match) int64 480B ...
      Attributes:
          created_at:                 2024-03-06T20:46:09.480812
          arviz_version:              0.17.0
          inference_library:          pymc
          inference_library_version:  5.10.4+7.g34d2a5d9

    • <xarray.Dataset> Size: 36kB
      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 7 ... 493 494 495 496 497 498 499
      Data variables:
          sd_att   (chain, draw) float64 16kB ...
          sd_def   (chain, draw) float64 16kB ...
      Attributes:
          sd_att:   pymc.logprob.transforms.LogTransform
          sd_def:   pymc.logprob.transforms.LogTransform