arviz 0.20.0__py3-none-any.whl → 0.21.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. arviz/__init__.py +1 -1
  2. arviz/data/base.py +2 -2
  3. arviz/data/inference_data.py +20 -7
  4. arviz/plots/backends/__init__.py +8 -7
  5. arviz/plots/backends/bokeh/bpvplot.py +4 -3
  6. arviz/plots/backends/bokeh/densityplot.py +5 -1
  7. arviz/plots/backends/bokeh/dotplot.py +5 -2
  8. arviz/plots/backends/bokeh/essplot.py +4 -2
  9. arviz/plots/backends/bokeh/forestplot.py +11 -4
  10. arviz/plots/backends/bokeh/khatplot.py +4 -2
  11. arviz/plots/backends/bokeh/lmplot.py +9 -3
  12. arviz/plots/backends/bokeh/mcseplot.py +2 -2
  13. arviz/plots/backends/bokeh/pairplot.py +10 -5
  14. arviz/plots/backends/bokeh/ppcplot.py +2 -1
  15. arviz/plots/backends/bokeh/rankplot.py +2 -1
  16. arviz/plots/backends/bokeh/traceplot.py +2 -1
  17. arviz/plots/backends/bokeh/violinplot.py +2 -1
  18. arviz/plots/backends/matplotlib/bpvplot.py +2 -1
  19. arviz/plots/bfplot.py +9 -26
  20. arviz/plots/bpvplot.py +10 -1
  21. arviz/plots/hdiplot.py +5 -0
  22. arviz/plots/plot_utils.py +5 -3
  23. arviz/preview.py +36 -5
  24. arviz/stats/__init__.py +1 -0
  25. arviz/stats/diagnostics.py +18 -14
  26. arviz/stats/stats.py +86 -0
  27. arviz/tests/base_tests/test_data.py +31 -7
  28. arviz/tests/base_tests/test_diagnostics.py +5 -4
  29. arviz/tests/base_tests/test_plots_matplotlib.py +26 -10
  30. arviz/tests/base_tests/test_stats.py +11 -0
  31. arviz/utils.py +4 -0
  32. {arviz-0.20.0.dist-info → arviz-0.21.0.dist-info}/METADATA +1 -1
  33. {arviz-0.20.0.dist-info → arviz-0.21.0.dist-info}/RECORD +36 -36
  34. {arviz-0.20.0.dist-info → arviz-0.21.0.dist-info}/WHEEL +1 -1
  35. {arviz-0.20.0.dist-info → arviz-0.21.0.dist-info}/LICENSE +0 -0
  36. {arviz-0.20.0.dist-info → arviz-0.21.0.dist-info}/top_level.txt +0 -0
arviz/preview.py CHANGED
@@ -1,17 +1,48 @@
1
- # pylint: disable=unused-import,unused-wildcard-import,wildcard-import
1
+ # pylint: disable=unused-import,unused-wildcard-import,wildcard-import,invalid-name
2
2
  """Expose features from arviz-xyz refactored packages inside ``arviz.preview`` namespace."""
3
+ import logging
4
+
5
+ _log = logging.getLogger(__name__)
6
+
7
+ info = ""
3
8
 
4
9
  try:
5
10
  from arviz_base import *
11
+
12
+ status = "arviz_base available, exposing its functions as part of arviz.preview"
13
+ _log.info(status)
6
14
  except ModuleNotFoundError:
7
- pass
15
+ status = "arviz_base not installed"
16
+ _log.info(status)
17
+ except ImportError:
18
+ status = "Unable to import arviz_base"
19
+ _log.info(status, exc_info=True)
20
+
21
+ info += status + "\n"
8
22
 
9
23
  try:
10
- import arviz_stats
24
+ from arviz_stats import *
25
+
26
+ status = "arviz_stats available, exposing its functions as part of arviz.preview"
27
+ _log.info(status)
11
28
  except ModuleNotFoundError:
12
- pass
29
+ status = "arviz_stats not installed"
30
+ _log.info(status)
31
+ except ImportError:
32
+ status = "Unable to import arviz_stats"
33
+ _log.info(status, exc_info=True)
34
+ info += status + "\n"
13
35
 
14
36
  try:
15
37
  from arviz_plots import *
38
+
39
+ status = "arviz_plots available, exposing its functions as part of arviz.preview"
40
+ _log.info(status)
16
41
  except ModuleNotFoundError:
17
- pass
42
+ status = "arviz_plots not installed"
43
+ _log.info(status)
44
+ except ImportError:
45
+ status = "Unable to import arviz_plots"
46
+ _log.info(status, exc_info=True)
47
+
48
+ info += status + "\n"
arviz/stats/__init__.py CHANGED
@@ -9,6 +9,7 @@ from .stats_utils import *
9
9
 
10
10
  __all__ = [
11
11
  "apply_test_function",
12
+ "bayes_factor",
12
13
  "bfmi",
13
14
  "compare",
14
15
  "hdi",
@@ -744,8 +744,8 @@ def _ess_sd(ary, relative=False):
744
744
  ary = np.asarray(ary)
745
745
  if _not_valid(ary, shape_kwargs=dict(min_draws=4, min_chains=1)):
746
746
  return np.nan
747
- ary = _split_chains(ary)
748
- return min(_ess(ary, relative=relative), _ess(ary**2, relative=relative))
747
+ ary = (ary - ary.mean()) ** 2
748
+ return _ess(_split_chains(ary), relative=relative)
749
749
 
750
750
 
751
751
  def _ess_quantile(ary, prob, relative=False):
@@ -838,13 +838,15 @@ def _mcse_sd(ary):
838
838
  ary = np.asarray(ary)
839
839
  if _not_valid(ary, shape_kwargs=dict(min_draws=4, min_chains=1)):
840
840
  return np.nan
841
- ess = _ess_sd(ary)
841
+ sims_c2 = (ary - ary.mean()) ** 2
842
+ ess = _ess_mean(sims_c2)
843
+ evar = (sims_c2).mean()
844
+ varvar = ((sims_c2**2).mean() - evar**2) / ess
845
+ varsd = varvar / evar / 4
842
846
  if _numba_flag:
843
- sd = float(_sqrt(svar(np.ravel(ary), ddof=1), np.zeros(1)).item())
847
+ mcse_sd_value = float(_sqrt(np.ravel(varsd), np.zeros(1)))
844
848
  else:
845
- sd = np.std(ary, ddof=1)
846
- fac_mcse_sd = np.sqrt(np.exp(1) * (1 - 1 / ess) ** (ess - 1) - 1)
847
- mcse_sd_value = sd * fac_mcse_sd
849
+ mcse_sd_value = np.sqrt(varsd)
848
850
  return mcse_sd_value
849
851
 
850
852
 
@@ -973,19 +975,21 @@ def _multichain_statistics(ary, focus="mean"):
973
975
  # ess mean
974
976
  ess_mean_value = _ess_mean(ary)
975
977
 
976
- # ess sd
977
- ess_sd_value = _ess_sd(ary)
978
-
979
978
  # mcse_mean
980
- sd = np.std(ary, ddof=1)
981
- mcse_mean_value = sd / np.sqrt(ess_mean_value)
979
+ sims_c2 = (ary - ary.mean()) ** 2
980
+ sims_c2_sum = sims_c2.sum()
981
+ var = sims_c2_sum / (sims_c2.size - 1)
982
+ mcse_mean_value = np.sqrt(var / ess_mean_value)
982
983
 
983
984
  # ess bulk
984
985
  ess_bulk_value = _ess(z_split)
985
986
 
986
987
  # mcse_sd
987
- fac_mcse_sd = np.sqrt(np.exp(1) * (1 - 1 / ess_sd_value) ** (ess_sd_value - 1) - 1)
988
- mcse_sd_value = sd * fac_mcse_sd
988
+ evar = sims_c2_sum / sims_c2.size
989
+ ess_mean_sims = _ess_mean(sims_c2)
990
+ varvar = ((sims_c2**2).mean() - evar**2) / ess_mean_sims
991
+ varsd = varvar / evar / 4
992
+ mcse_sd_value = np.sqrt(varsd)
989
993
 
990
994
  return (
991
995
  mcse_mean_value,
arviz/stats/stats.py CHANGED
@@ -27,6 +27,7 @@ from ..utils import Numba, _numba_var, _var_names, get_coords
27
27
  from .density_utils import get_bins as _get_bins
28
28
  from .density_utils import histogram as _histogram
29
29
  from .density_utils import kde as _kde
30
+ from .density_utils import _kde_linear
30
31
  from .diagnostics import _mc_error, _multichain_statistics, ess
31
32
  from .stats_utils import ELPDData, _circular_standard_deviation, smooth_data
32
33
  from .stats_utils import get_log_likelihood as _get_log_likelihood
@@ -41,6 +42,7 @@ from ..labels import BaseLabeller
41
42
 
42
43
  __all__ = [
43
44
  "apply_test_function",
45
+ "bayes_factor",
44
46
  "compare",
45
47
  "hdi",
46
48
  "loo",
@@ -2337,3 +2339,87 @@ def _cjs_dist(draws, weights):
2337
2339
  bound = cdf_p_int + cdf_q_int
2338
2340
 
2339
2341
  return np.sqrt((cjs_pq + cjs_qp) / bound)
2342
+
2343
+
2344
+ def bayes_factor(idata, var_name, ref_val=0, prior=None, return_ref_vals=False):
2345
+ r"""Approximated Bayes Factor for comparing hypothesis of two nested models.
2346
+
2347
+ The Bayes factor is estimated by comparing a model (H1) against a model in which the
2348
+ parameter of interest has been restricted to be a point-null (H0). This computation
2349
+ assumes the models are nested and thus H0 is a special case of H1.
2350
+
2351
+ Notes
2352
+ -----
2353
+ The bayes Factor is approximated as the Savage-Dickey density ratio
2354
+ algorithm presented in [1]_.
2355
+
2356
+ Parameters
2357
+ ----------
2358
+ idata : InferenceData
2359
+ Any object that can be converted to an :class:`arviz.InferenceData` object
2360
+ Refer to documentation of :func:`arviz.convert_to_dataset` for details.
2361
+ var_name : str, optional
2362
+ Name of variable we want to test.
2363
+ ref_val : int, default 0
2364
+ Point-null for Bayes factor estimation.
2365
+ prior : numpy.array, optional
2366
+ In case we want to use different prior, for example for sensitivity analysis.
2367
+ return_ref_vals : bool, optional
2368
+ Whether to return the values of the prior and posterior at the reference value.
2369
+ Used by :func:`arviz.plot_bf` to display the distribution comparison.
2370
+
2371
+
2372
+ Returns
2373
+ -------
2374
+ dict : A dictionary with BF10 (Bayes Factor 10 (H1/H0 ratio), and BF01 (H0/H1 ratio).
2375
+
2376
+ References
2377
+ ----------
2378
+ .. [1] Heck, D., 2019. A caveat on the Savage-Dickey density ratio:
2379
+ The case of computing Bayes factors for regression parameters.
2380
+
2381
+ Examples
2382
+ --------
2383
+ Moderate evidence indicating that the parameter "a" is different from zero.
2384
+
2385
+ .. ipython::
2386
+
2387
+ In [1]: import numpy as np
2388
+ ...: import arviz as az
2389
+ ...: idata = az.from_dict(posterior={"a":np.random.normal(1, 0.5, 5000)},
2390
+ ...: prior={"a":np.random.normal(0, 1, 5000)})
2391
+ ...: az.bayes_factor(idata, var_name="a", ref_val=0)
2392
+
2393
+ """
2394
+
2395
+ posterior = extract(idata, var_names=var_name).values
2396
+
2397
+ if ref_val > posterior.max() or ref_val < posterior.min():
2398
+ _log.warning(
2399
+ "The reference value is outside of the posterior. "
2400
+ "This translate into infinite support for H1, which is most likely an overstatement."
2401
+ )
2402
+
2403
+ if posterior.ndim > 1:
2404
+ _log.warning("Posterior distribution has {posterior.ndim} dimensions")
2405
+
2406
+ if prior is None:
2407
+ prior = extract(idata, var_names=var_name, group="prior").values
2408
+
2409
+ if posterior.dtype.kind == "f":
2410
+ posterior_grid, posterior_pdf, *_ = _kde_linear(posterior)
2411
+ prior_grid, prior_pdf, *_ = _kde_linear(prior)
2412
+ posterior_at_ref_val = np.interp(ref_val, posterior_grid, posterior_pdf)
2413
+ prior_at_ref_val = np.interp(ref_val, prior_grid, prior_pdf)
2414
+
2415
+ elif posterior.dtype.kind == "i":
2416
+ posterior_at_ref_val = (posterior == ref_val).mean()
2417
+ prior_at_ref_val = (prior == ref_val).mean()
2418
+
2419
+ bf_10 = prior_at_ref_val / posterior_at_ref_val
2420
+ bf = {"BF10": bf_10, "BF01": 1 / bf_10}
2421
+
2422
+ if return_ref_vals:
2423
+ return (bf, {"prior": prior_at_ref_val, "posterior": posterior_at_ref_val})
2424
+ else:
2425
+ return bf
@@ -3,6 +3,7 @@
3
3
 
4
4
  import importlib
5
5
  import os
6
+ import warnings
6
7
  from collections import namedtuple
7
8
  from copy import deepcopy
8
9
  from html import escape
@@ -32,7 +33,13 @@ from ... import (
32
33
  extract,
33
34
  )
34
35
 
35
- from ...data.base import dict_to_dataset, generate_dims_coords, infer_stan_dtypes, make_attrs
36
+ from ...data.base import (
37
+ dict_to_dataset,
38
+ generate_dims_coords,
39
+ infer_stan_dtypes,
40
+ make_attrs,
41
+ numpy_to_data_array,
42
+ )
36
43
  from ...data.datasets import LOCAL_DATASETS, REMOTE_DATASETS, RemoteFileMetadata
37
44
  from ..helpers import ( # pylint: disable=unused-import
38
45
  chains,
@@ -231,6 +238,17 @@ def test_dims_coords_skip_event_dims(shape):
231
238
  assert "z" not in coords
232
239
 
233
240
 
241
+ @pytest.mark.parametrize("dims", [None, ["chain", "draw"], ["chain", "draw", None]])
242
+ def test_numpy_to_data_array_with_dims(dims):
243
+ da = numpy_to_data_array(
244
+ np.empty((4, 500, 7)),
245
+ var_name="a",
246
+ dims=dims,
247
+ default_dims=["chain", "draw"],
248
+ )
249
+ assert list(da.dims) == ["chain", "draw", "a_dim_0"]
250
+
251
+
234
252
  def test_make_attrs():
235
253
  extra_attrs = {"key": "Value"}
236
254
  attrs = make_attrs(attrs=extra_attrs)
@@ -921,7 +939,7 @@ class TestInferenceData: # pylint: disable=too-many-public-methods
921
939
  data = np.random.normal(size=(4, 500, 8))
922
940
  idata = data_random
923
941
  with pytest.warns(UserWarning, match="The group.+not defined in the InferenceData scheme"):
924
- idata.add_groups({"new_group": idata.posterior})
942
+ idata.add_groups({"new_group": idata.posterior}, warn_on_custom_groups=True)
925
943
  with pytest.warns(UserWarning, match="the default dims.+will be added automatically"):
926
944
  idata.add_groups(constant_data={"a": data[..., 0], "b": data})
927
945
  assert idata.new_group.equals(idata.posterior)
@@ -962,8 +980,8 @@ class TestInferenceData: # pylint: disable=too-many-public-methods
962
980
  with pytest.raises(ValueError, match="join must be either"):
963
981
  idata.extend(idata2, join="outer")
964
982
  idata2.add_groups(new_group=idata2.prior)
965
- with pytest.warns(UserWarning):
966
- idata.extend(idata2)
983
+ with pytest.warns(UserWarning, match="new_group"):
984
+ idata.extend(idata2, warn_on_custom_groups=True)
967
985
 
968
986
 
969
987
  class TestNumpyToDataArray:
@@ -1156,11 +1174,17 @@ def test_bad_inference_data():
1156
1174
  InferenceData(posterior=[1, 2, 3])
1157
1175
 
1158
1176
 
1159
- def test_inference_data_other_groups():
1177
+ @pytest.mark.parametrize("warn", [True, False])
1178
+ def test_inference_data_other_groups(warn):
1160
1179
  datadict = {"a": np.random.randn(100), "b": np.random.randn(1, 100, 10)}
1161
1180
  dataset = convert_to_dataset(datadict, coords={"c": np.arange(10)}, dims={"b": ["c"]})
1162
- with pytest.warns(UserWarning, match="not.+in.+InferenceData scheme"):
1163
- idata = InferenceData(other_group=dataset)
1181
+ if warn:
1182
+ with pytest.warns(UserWarning, match="not.+in.+InferenceData scheme"):
1183
+ idata = InferenceData(other_group=dataset, warn_on_custom_groups=True)
1184
+ else:
1185
+ with warnings.catch_warnings():
1186
+ warnings.simplefilter("error")
1187
+ idata = InferenceData(other_group=dataset, warn_on_custom_groups=False)
1164
1188
  fails = check_multiple_attrs({"other_group": ["a", "b"]}, idata)
1165
1189
  assert not fails
1166
1190
 
@@ -120,10 +120,11 @@ class TestDiagnostics:
120
120
  ```
121
121
  Reference file:
122
122
 
123
- Created: 2020-08-31
124
- System: Ubuntu 18.04.5 LTS
125
- R version 4.0.2 (2020-06-22)
126
- posterior 0.1.2
123
+ Created: 2024-12-20
124
+ System: Ubuntu 24.04.1 LTS
125
+ R version 4.4.2 (2024-10-31)
126
+ posterior version from https://github.com/stan-dev/posterior/pull/388
127
+ (after release 1.6.0 but before the fixes in the PR were released).
127
128
  """
128
129
  # download input files
129
130
  here = os.path.dirname(os.path.abspath(__file__))
@@ -2,21 +2,22 @@
2
2
 
3
3
  # pylint: disable=redefined-outer-name,too-many-lines
4
4
  import os
5
+ import re
5
6
  from copy import deepcopy
6
7
 
7
8
  import matplotlib.pyplot as plt
8
9
  import numpy as np
9
10
  import pytest
11
+ import xarray as xr
10
12
  from matplotlib import animation
11
13
  from pandas import DataFrame
12
14
  from scipy.stats import gaussian_kde, norm
13
- import xarray as xr
14
15
 
15
16
  from ...data import from_dict, load_arviz_data
16
17
  from ...plots import (
17
18
  plot_autocorr,
18
- plot_bpv,
19
19
  plot_bf,
20
+ plot_bpv,
20
21
  plot_compare,
21
22
  plot_density,
22
23
  plot_dist,
@@ -43,20 +44,20 @@ from ...plots import (
43
44
  plot_ts,
44
45
  plot_violin,
45
46
  )
47
+ from ...plots.dotplot import wilkinson_algorithm
48
+ from ...plots.plot_utils import plot_point_interval
46
49
  from ...rcparams import rc_context, rcParams
47
50
  from ...stats import compare, hdi, loo, waic
48
51
  from ...stats.density_utils import kde as _kde
49
- from ...utils import _cov, BehaviourChangeWarning
50
- from ...plots.plot_utils import plot_point_interval
51
- from ...plots.dotplot import wilkinson_algorithm
52
+ from ...utils import BehaviourChangeWarning, _cov
52
53
  from ..helpers import ( # pylint: disable=unused-import
54
+ RandomVariableTestClass,
53
55
  create_model,
54
56
  create_multidimensional_model,
55
57
  does_not_warn,
56
58
  eight_schools_params,
57
59
  models,
58
60
  multidim_models,
59
- RandomVariableTestClass,
60
61
  )
61
62
 
62
63
  rcParams["data.load"] = "eager"
@@ -1236,6 +1237,23 @@ def test_plot_hdi_dataset_error(models):
1236
1237
  plot_hdi(np.arange(8), hdi_data=hdi_data)
1237
1238
 
1238
1239
 
1240
+ def test_plot_hdi_string_error():
1241
+ """Check x as type string raises an error."""
1242
+ x_data = ["a", "b", "c", "d"]
1243
+ y_data = np.random.normal(0, 5, (1, 200, len(x_data)))
1244
+ hdi_data = hdi(y_data)
1245
+ with pytest.raises(
1246
+ NotImplementedError,
1247
+ match=re.escape(
1248
+ (
1249
+ "The `arviz.plot_hdi()` function does not support categorical data. "
1250
+ "Consider using `arviz.plot_forest()`."
1251
+ )
1252
+ ),
1253
+ ):
1254
+ plot_hdi(x=x_data, y=y_data, hdi_data=hdi_data)
1255
+
1256
+
1239
1257
  def test_plot_hdi_datetime_error():
1240
1258
  """Check x as datetime raises an error."""
1241
1259
  x_data = np.arange(start="2022-01-01", stop="2022-03-01", dtype=np.datetime64)
@@ -2082,7 +2100,5 @@ def test_plot_bf():
2082
2100
  idata = from_dict(
2083
2101
  posterior={"a": np.random.normal(1, 0.5, 5000)}, prior={"a": np.random.normal(0, 1, 5000)}
2084
2102
  )
2085
- bf_dict0, _ = plot_bf(idata, var_name="a", ref_val=0)
2086
- bf_dict1, _ = plot_bf(idata, prior=np.random.normal(0, 10, 5000), var_name="a", ref_val=0)
2087
- assert bf_dict0["BF10"] > bf_dict0["BF01"]
2088
- assert bf_dict1["BF10"] < bf_dict1["BF01"]
2103
+ _, bf_plot = plot_bf(idata, var_name="a", ref_val=0)
2104
+ assert bf_plot is not None
@@ -18,6 +18,7 @@ from ...data import concat, convert_to_inference_data, from_dict, load_arviz_dat
18
18
  from ...rcparams import rcParams
19
19
  from ...stats import (
20
20
  apply_test_function,
21
+ bayes_factor,
21
22
  compare,
22
23
  ess,
23
24
  hdi,
@@ -871,3 +872,13 @@ def test_priorsens_coords(psens_data):
871
872
  assert "mu" in result
872
873
  assert "theta" in result
873
874
  assert "school" in result.theta_t.dims
875
+
876
+
877
+ def test_bayes_factor():
878
+ idata = from_dict(
879
+ posterior={"a": np.random.normal(1, 0.5, 5000)}, prior={"a": np.random.normal(0, 1, 5000)}
880
+ )
881
+ bf_dict0 = bayes_factor(idata, var_name="a", ref_val=0)
882
+ bf_dict1 = bayes_factor(idata, prior=np.random.normal(0, 10, 5000), var_name="a", ref_val=0)
883
+ assert bf_dict0["BF10"] > bf_dict0["BF01"]
884
+ assert bf_dict1["BF10"] < bf_dict1["BF01"]
arviz/utils.py CHANGED
@@ -330,6 +330,7 @@ class Numba:
330
330
  """A class to toggle numba states."""
331
331
 
332
332
  numba_flag = numba_check()
333
+ """bool: Indicates whether Numba optimizations are enabled. Defaults to False."""
333
334
 
334
335
  @classmethod
335
336
  def disable_numba(cls):
@@ -732,7 +733,10 @@ class Dask:
732
733
  """
733
734
 
734
735
  dask_flag = False
736
+ """bool: Enables Dask parallelization when set to True. Defaults to False."""
735
737
  dask_kwargs = None
738
+ """dict: Additional keyword arguments for Dask configuration.
739
+ Defaults to an empty dictionary."""
736
740
 
737
741
  @classmethod
738
742
  def enable_dask(cls, dask_kwargs=None):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: arviz
3
- Version: 0.20.0
3
+ Version: 0.21.0
4
4
  Summary: Exploratory analysis of Bayesian models
5
5
  Home-page: http://github.com/arviz-devs/arviz
6
6
  Author: ArviZ Developers
@@ -1,15 +1,15 @@
1
- arviz/__init__.py,sha256=cZ-_ahEB5206wiaQaaTe3LjM8VIC04GAkV-noExc2kw,10397
1
+ arviz/__init__.py,sha256=1PWUe3oeouP_C8JmAXhMrHarplymbqLyWqm950C-aAI,10397
2
2
  arviz/labels.py,sha256=w4-t0qdJzjKrqRyhzbtk6ucoMIAxle1HpHYlH7up06Q,6828
3
- arviz/preview.py,sha256=5HwHycvbSAkWsAEYHBfd3Crwmeq8T06ysSgB528iQnA,375
3
+ arviz/preview.py,sha256=Fmff8j9Zlvgi5w2PRwnbkEOioJY8fK9p1SWQWjTl4N8,1314
4
4
  arviz/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  arviz/rcparams.py,sha256=lQnBprbDihEcsP5FujoJetGna4T8nc20JnuVf1Wn-1k,21031
6
6
  arviz/sel_utils.py,sha256=xvAYENhGXDTrhaT4Itlk1SJQUUGZ6BGcR04fPFgvzdM,6951
7
- arviz/utils.py,sha256=sOUIkqmWtwY3PM-rQpN6arW9MsPt-MfvzdwAe78rT8U,26425
7
+ arviz/utils.py,sha256=-q3eAeficZcLakOt6UXN0eyVx6uIVVpkqA_ky8FRSjE,26699
8
8
  arviz/data/__init__.py,sha256=SG2umdZ8uVNYKVBoVYPy5tNxJnzLdyw0spPMjMTae5k,1558
9
- arviz/data/base.py,sha256=ptyUVyp57mVq0QVrPRYzRT1EAisSYZqZucq5_V_ZdX8,21369
9
+ arviz/data/base.py,sha256=PALdVidyCxJqje_za4XPwXH010qAMJt4VzzeOflUCC8,21365
10
10
  arviz/data/converters.py,sha256=4QU5_0OU84HV3gSXXY_N5bd6S9ft81lfpnCT-8E8qyc,7933
11
11
  arviz/data/datasets.py,sha256=wPi23KZI-w4HrhjmY1LUg0Rj0aJobSJ4WO3LBrjfZQc,5392
12
- arviz/data/inference_data.py,sha256=3hVaL26YmWeblrZhVKmnaKON3Itn_EsGNssEgSQiEuc,92745
12
+ arviz/data/inference_data.py,sha256=GYmQzz26c614IX_XVvmoTA0ycaC2pZs3B48hd2HYhrA,93619
13
13
  arviz/data/io_beanmachine.py,sha256=QQVBD6rftvs6_kLIb4Vm1QzQ6BsS0J9DTrzw2Jj4ob8,3745
14
14
  arviz/data/io_cmdstan.py,sha256=8YX9Nfkx4LqjfKms4s4GTOkOjZNelb6SukvRZRHY6iM,38994
15
15
  arviz/data/io_cmdstanpy.py,sha256=iSr8ciKBFoIa1tJGHEX-2JKkUJRyaTXzRXf-5mu8q5U,42991
@@ -31,8 +31,8 @@ arviz/data/example_data/data/centered_eight.nc,sha256=jvw6uv4MeW65rqe2lJDU4kAKM8
31
31
  arviz/data/example_data/data/non_centered_eight.nc,sha256=r7kyd10HyJTTRQs4OlSCXPVt3T-nLsPd3g-bcPYnPmA,836647
32
32
  arviz/plots/__init__.py,sha256=atWhfLXHAD6zaTjbdWdTaJrPTNBl3XpcSCY4etgw_cY,1514
33
33
  arviz/plots/autocorrplot.py,sha256=f-rYtnZtxgOns5sIT6pdw-EdU74lAVmAeV9b6rKLsgw,5666
34
- arviz/plots/bfplot.py,sha256=s8bizLCkF5uZnz66UKmuUJs_AXuMVrgGObTa2ofUF-Q,5124
35
- arviz/plots/bpvplot.py,sha256=QR4znezjiSLMyMagvnJLb9Y1SIlT99gJ52o4FnX5tZg,12098
34
+ arviz/plots/bfplot.py,sha256=TKCkk60dgIk70CNWz9pHDXb1HGwHT_aLfNgFH6jDz9c,4367
35
+ arviz/plots/bpvplot.py,sha256=Pf0ME21_teSQd_7CcuYE2MxfDJHcy5eW7Ms7yIDZSCA,12505
36
36
  arviz/plots/compareplot.py,sha256=Z8usSMEeQKs4GmkziDR4dVzSh3Ocd4ySfiNDZVaFOUc,6078
37
37
  arviz/plots/densityplot.py,sha256=6477ZljpBCcZRw0SUwcTO4FYjxqw_qYsJupWNo-jCok,10895
38
38
  arviz/plots/distcomparisonplot.py,sha256=gVNQUN0VX7hC527fcUk1oxtQRdIl5mrltU95c0Nra9k,7184
@@ -43,7 +43,7 @@ arviz/plots/elpdplot.py,sha256=NKqPkwTj9BWDzwMnG0cPeLmYBGMX_meP9F6bqvTwLKY,6433
43
43
  arviz/plots/energyplot.py,sha256=znEDPYpWaTIX0XpdVoyhXOITJ4A8BYkI9t1TVhJq4Qo,4797
44
44
  arviz/plots/essplot.py,sha256=ch0DjUQDILk4ohpSUR-9VHejGFb6Xmelly-qa-fKb9E,11741
45
45
  arviz/plots/forestplot.py,sha256=37Wj4wFGjydZS4SpdqZ9qLxhZBo4rFxV_MWQnZAS7DA,11897
46
- arviz/plots/hdiplot.py,sha256=cNj2r0dPxtquZNoChgjFO-wmqgU-W-dq_ed1kWJ2vHI,7589
46
+ arviz/plots/hdiplot.py,sha256=Pii9ZsuejEM-I24dn39muUL-yYKTfe2RWzAuU0W-3SI,7798
47
47
  arviz/plots/kdeplot.py,sha256=55mQPyIrvPKeJbjTsqWTExcff6QPvXFXG47XtDfPs_Y,11924
48
48
  arviz/plots/khatplot.py,sha256=u03gmBG1xwxG07ASLZEJB-GsRhRHtUCtbglpC1N0aIg,8086
49
49
  arviz/plots/lmplot.py,sha256=LxR7RXkaAi5J8076isebVrtdk6UwbcTRekEymM9S6cY,11726
@@ -51,7 +51,7 @@ arviz/plots/loopitplot.py,sha256=bFUO_Fy4z6u6E39GdaF4rIvc-COWNwF4A0n2kcmZBfA,832
51
51
  arviz/plots/mcseplot.py,sha256=rsiz4E9M9p58YetAaF75gbenGIj4M0hapWnh9UJOXzY,6829
52
52
  arviz/plots/pairplot.py,sha256=yVxyLC7ms0SKpTunifacUyOblH8BW9CsQqE2Hv0ARP4,10407
53
53
  arviz/plots/parallelplot.py,sha256=ZBEsHvnlmSXLRpSwP-KUwzgWBC2S4siKXFGJnLf7uAE,7125
54
- arviz/plots/plot_utils.py,sha256=mawuYnwb9AfdLQ9HAerTOGT9iKNjXrQraXvtDd9tFco,18243
54
+ arviz/plots/plot_utils.py,sha256=VyVR50HrZegdkWa6ZxtRnC_WJstooYvaB-xsDHf6kaQ,18337
55
55
  arviz/plots/posteriorplot.py,sha256=pC-5SQZOGq1F4opM_sQLxn4ZG2we4Y9ULV8yhxjGVdo,10952
56
56
  arviz/plots/ppcplot.py,sha256=UPTtXDWHf3wFAb-apNPGcz8qw9CQwINGml_2YkYI-iM,13967
57
57
  arviz/plots/rankplot.py,sha256=lz0swHs6EBe-gXn4udP1Um3RS-EatsOAmguYqGMlIjU,8648
@@ -59,39 +59,39 @@ arviz/plots/separationplot.py,sha256=Fx_QVeFUcF45fm7nn06pt0qubOzvH8QMU1cw5RLyaik
59
59
  arviz/plots/traceplot.py,sha256=dwcF7rsjMAIxZ_LPv7Z8os01uQZHXTkDFWEBtsbzI9k,10216
60
60
  arviz/plots/tsplot.py,sha256=haTyvfGX5fA8Zle9bzllybG5n307BUJIxGywNAnOsU0,15925
61
61
  arviz/plots/violinplot.py,sha256=yxoEMGTIt4CDinZaNHPYI5MqFvXB2J2gyKdKJ47PKdk,7129
62
- arviz/plots/backends/__init__.py,sha256=LZxXo7ogt7ZVrdUea0xkxpx5YV0wpV20MHwdItgk3oU,7752
62
+ arviz/plots/backends/__init__.py,sha256=LQbEHNuGuD2CRNmO-Djnfuk4kMF58guFGjEYr68mAxI,7867
63
63
  arviz/plots/backends/bokeh/__init__.py,sha256=e2wfZNdGTFU5GjsLokCLpknweaNgjZ5v3k7NB0gry6g,4877
64
64
  arviz/plots/backends/bokeh/autocorrplot.py,sha256=9CruVndfMnqsi4waav7Gcr7pn0nmUB0mkJxkzOjtGtw,2463
65
65
  arviz/plots/backends/bokeh/bfplot.py,sha256=ydjomuA5iTw9LE2_eq9_u6Ox3MCy0ulE_DU4qgH0MO8,406
66
- arviz/plots/backends/bokeh/bpvplot.py,sha256=btwA4qbO8iCtZ-vriscqNlwn0zEooObh7DD6-fsyM44,6642
66
+ arviz/plots/backends/bokeh/bpvplot.py,sha256=FItG_h39UeoZX9nNE7GfM95cvT2gstlf374b2XuCEsM,6673
67
67
  arviz/plots/backends/bokeh/compareplot.py,sha256=52jOjhrRqB-Dgdw8odKfM4aPXk9med6MopCiHxKNgJM,4736
68
- arviz/plots/backends/bokeh/densityplot.py,sha256=TQ5OkHHnihT1NBa4vtt6wJUsll_K3xaeEFzDtqrmcVU,6286
68
+ arviz/plots/backends/bokeh/densityplot.py,sha256=LHkRpz7QJDobpBgw6Wuy23nFr8Ruc2CUBUDVwbj5A9c,6356
69
69
  arviz/plots/backends/bokeh/distcomparisonplot.py,sha256=o8FHMb1ZzKPpt7fXhwBr6HGhqpclO1Qk9o6aTGypgv0,431
70
70
  arviz/plots/backends/bokeh/distplot.py,sha256=a2yY4waIPdwGhDpUtYi87Ra-TJiAA67oQumIiU-nXiA,4851
71
- arviz/plots/backends/bokeh/dotplot.py,sha256=qy8B4QL6B_ZfoVtDDA6c7HcsQofQLlE1tTnkcJO1mPA,2828
71
+ arviz/plots/backends/bokeh/dotplot.py,sha256=xnbaCSyGjCSfdiIIRf5zuMeogfNdNPK-1LenasjTAa8,2923
72
72
  arviz/plots/backends/bokeh/ecdfplot.py,sha256=Zrinhu6ViG3BbClxnRFZ_zIZm7S1nARiydHi-l1_i-g,1680
73
73
  arviz/plots/backends/bokeh/elpdplot.py,sha256=5bn_rH1Aixm0--BArAP4m4kuZMjWxR8ox-8T-xK_GMY,6487
74
74
  arviz/plots/backends/bokeh/energyplot.py,sha256=FKPYRaWwM32Vw0AHE0MIWBn9wZQeoYdP_YpYZGijIq0,4571
75
- arviz/plots/backends/bokeh/essplot.py,sha256=zghMEYUH3bAljqNt72-dRa8IFom27F7dMklHNQOrzBM,5494
76
- arviz/plots/backends/bokeh/forestplot.py,sha256=DIoGzSIAMA9vmKwpoNxVoNKFpDBwpfjdGd6KTl9u_OY,27219
75
+ arviz/plots/backends/bokeh/essplot.py,sha256=0i2E1TvlzzP9mTavlGlJ5hPoFW5tGWCkAPAKrVHbgYQ,5560
76
+ arviz/plots/backends/bokeh/forestplot.py,sha256=TAaXMqF2F1G7BIeDdWas14C6pCKZ3RTNhLIjUm-_IQs,27466
77
77
  arviz/plots/backends/bokeh/hdiplot.py,sha256=bAhTPi9D7cw2ytSvjSIRD3g-PqpB9OFwusrQAnmKCYY,1538
78
78
  arviz/plots/backends/bokeh/kdeplot.py,sha256=nKEgJfnP7NK2Y2cipF_RglEC6GpowaagH5wZP3iZq-U,9329
79
- arviz/plots/backends/bokeh/khatplot.py,sha256=J5m9vugSzpi9sE-T_2PRzI8pA100Hf8rUMhpmkTP8n4,4599
80
- arviz/plots/backends/bokeh/lmplot.py,sha256=kqfkQ1HAahi_XwkWxrub73zPM_4dXEFvKAd0TFKsoXQ,5392
79
+ arviz/plots/backends/bokeh/khatplot.py,sha256=Iz2C6YaQOhnucAFbjSWTha2HNLFmctXc4tt_rLdS6Ko,4663
80
+ arviz/plots/backends/bokeh/lmplot.py,sha256=0VIu1CPngKFQZayOqASAYHfXU8s_SRzysjdmxkELRJo,5600
81
81
  arviz/plots/backends/bokeh/loopitplot.py,sha256=FWjcsSWGJNy4wM63_N2qpg5oECb3Cq-uLy3xDS5x6j4,7172
82
- arviz/plots/backends/bokeh/mcseplot.py,sha256=teyAG-A4vIHor_Qr4iB3l5nLJ--EzvPvw1x44hUOVSI,5924
83
- arviz/plots/backends/bokeh/pairplot.py,sha256=2sByGaDuDT_ebyhPLIP3jRO1i43DLVDTPKWCpjd9MXc,13146
82
+ arviz/plots/backends/bokeh/mcseplot.py,sha256=QHyXeANcVSeLRdPJGh5RihZmaYq8cAPjSAn6FGJXQRk,5960
83
+ arviz/plots/backends/bokeh/pairplot.py,sha256=kNvB3pVcpWXz7GMjBKc0pNyJdbx7VYgyEQOZeFbVgKo,13416
84
84
  arviz/plots/backends/bokeh/parallelplot.py,sha256=SNChOLWvcKxXuuJsIfWs9CNj7qDuVb95UZyp4CP1BQE,2230
85
85
  arviz/plots/backends/bokeh/posteriorplot.py,sha256=yBAlGo3lQpFBVro724eZtKnOHgVkY7LXupa-8_VtE7c,9380
86
- arviz/plots/backends/bokeh/ppcplot.py,sha256=mfDzTXxJU26CcK8ZKno3Y_yK_y3VYeUT3vaJqUoGEq4,13269
87
- arviz/plots/backends/bokeh/rankplot.py,sha256=UvzzzhOEnHTX4BkO30JO7iKyU0dwbq7kqo0rV6LlXEU,4474
86
+ arviz/plots/backends/bokeh/ppcplot.py,sha256=fDeXXn1WtjjSs-285nDo76NKJTp2m5hIZ7V9S6iqA30,13307
87
+ arviz/plots/backends/bokeh/rankplot.py,sha256=cRTAU-cWt__0J4CzsHHSf47SA_vB1n4mQ16XIfve7aE,4531
88
88
  arviz/plots/backends/bokeh/separationplot.py,sha256=_VhJUnPW03xVpy2y4h8npLyPPD49H76WQMmj3hOq2Hc,2416
89
- arviz/plots/backends/bokeh/traceplot.py,sha256=mHyJQqj0IzwKzSsK0eJ7u05V-WObZCJKuLbJ9EpdPtM,14208
90
- arviz/plots/backends/bokeh/violinplot.py,sha256=_GaLDsq6muqnDr1BQCFClCGqy7hyEk7moYpMd0MNwNA,4359
89
+ arviz/plots/backends/bokeh/traceplot.py,sha256=mnw2rBoLNVrWYDR-m0HyECHFD1-dlsS18gj6D5qGGQ4,14246
90
+ arviz/plots/backends/bokeh/violinplot.py,sha256=lfAzkv6qABLSz5R4uzFUotVExnG_c8HP3vkT_7Yc1dQ,4389
91
91
  arviz/plots/backends/matplotlib/__init__.py,sha256=LBEWakXN4QFoIXp_aPXPMTzXnA8VJt24k5RaowPCQoY,3629
92
92
  arviz/plots/backends/matplotlib/autocorrplot.py,sha256=ahyNnwyNrLubZTsxNvTi5hAZ5gV9dmo_wecrTYyMMDI,1807
93
93
  arviz/plots/backends/matplotlib/bfplot.py,sha256=00-xGO_VpmTxCkYiC1cGGsAW0HNO3bhQJkFxA6ssMh0,1828
94
- arviz/plots/backends/matplotlib/bpvplot.py,sha256=SeAGSOxhUFMIlQcluVnGEF5SnW2qjg1HGx4St-aiFz8,6262
94
+ arviz/plots/backends/matplotlib/bpvplot.py,sha256=EJ79XptBAPrERh59wg0PCkKliIS1oPgcdzMkLmSFcno,6301
95
95
  arviz/plots/backends/matplotlib/compareplot.py,sha256=qvjSkNDBTZh3vxIw4pNEyRnaAM8qFG9vWw0X23hscsI,3695
96
96
  arviz/plots/backends/matplotlib/densityplot.py,sha256=zlqzYvH3VXWPiiIvL--fxtMp3hIGrcttKkQxKPV1U2s,5479
97
97
  arviz/plots/backends/matplotlib/distcomparisonplot.py,sha256=XZY2jITNKtcIMsg5tl_lzuwI-2DcdUdCWqrK7bsdvWE,3568
@@ -136,28 +136,28 @@ arviz/plots/styles/arviz-white.mplstyle,sha256=p3dbvWzOKhA-u8r3BmTF-bR5bhKh87iIk
136
136
  arviz/plots/styles/arviz-whitegrid.mplstyle,sha256=IMjjlfG3wg7heUjcVrkez1SNoiMI6BLztGPmsUp1iws,1072
137
137
  arviz/static/css/style.css,sha256=wcC7rvCT4E6TycEiw7YqxwyaaZ4tTRDGqMkYYjAqrao,5910
138
138
  arviz/static/html/icons-svg-inline.html,sha256=t-ChbtS1Gv8uZxc31DCJS8SuXDsLGUHoKgwv8zu6j2M,1343
139
- arviz/stats/__init__.py,sha256=jWXBXngHmYFy8m_3QJKYRvLszI4L5Q1aIBS79PC9Gms,700
139
+ arviz/stats/__init__.py,sha256=kvrANzMkqyHMTdry7N5w836E2OP0tJM6bm5-G8OZaA0,721
140
140
  arviz/stats/density_utils.py,sha256=WCEkXCQsaycY_usA6xkorhIqr3_5ru7wgwE9eJJgdH8,32216
141
- arviz/stats/diagnostics.py,sha256=qGIrq258E0vl_tJwZSCvmp0dbQxvysrdJ8zzIsaK50A,32501
141
+ arviz/stats/diagnostics.py,sha256=COTy2c5ROAirCAK_UNo7kQnggN71maBRPwy54ZdabKE,32656
142
142
  arviz/stats/ecdf_utils.py,sha256=Wy38wL-bsHDlpyU9qnDjedYBvbP_6ZrzJuWo6NzD2Xg,11835
143
- arviz/stats/stats.py,sha256=_4_L4_dOmyeWploQMQuUPjPFzjC3DMEetn_RIl3IP8c,86678
143
+ arviz/stats/stats.py,sha256=0cpdhmTwEVNY6VedeYhl2D3zlXj2hn2Mp2yqVkufP94,89884
144
144
  arviz/stats/stats_refitting.py,sha256=trbPC7LCnsb-n5D6g7J0bzXJCPfcDukJDniB4ud1z9E,5415
145
145
  arviz/stats/stats_utils.py,sha256=XG8ILPVs8Jbh_v7jzLfwMkm2HraT2j2-Hxe_kEYlLjQ,20076
146
146
  arviz/tests/__init__.py,sha256=TiS6C1IzwAXmNa8u36Y2xzL1CTTZm2PwzAtmZgoqepE,18
147
147
  arviz/tests/conftest.py,sha256=6U9WpKmYf38EVRoFZNBpV0CunQvESBFJG2SJ8IBEkL4,1270
148
148
  arviz/tests/helpers.py,sha256=qhsOhLtfyz-dC2yuT6ug0frYZlbims06BljJuEVDP6E,23593
149
149
  arviz/tests/base_tests/__init__.py,sha256=zg7V5_0DZrCz7ozETqET6bUpAvUUmmkSoLpJLwaIj2E,23
150
- arviz/tests/base_tests/test_data.py,sha256=QTKeQtTflU5TSnGk-rFLV9OQhmvoQ7RT962MLpu2YXU,63543
150
+ arviz/tests/base_tests/test_data.py,sha256=L3vfscLm8aMVjd3MswJqmJ_J7Y2sNjwjCeJQb4TX9_Q,64296
151
151
  arviz/tests/base_tests/test_data_zarr.py,sha256=sPWnIQ7vPhN5Ql3Dq4JENuSwQV5IeignQjy9BAYe1_A,5441
152
- arviz/tests/base_tests/test_diagnostics.py,sha256=w8yT2WxelnxH-ynAN9lvspQTRR_UlDmnXIRMe7fus1c,20219
152
+ arviz/tests/base_tests/test_diagnostics.py,sha256=pbuy1-nvTKWSHv0nnhXOhpG4e2uy-4GGZb4lxAdoMpw,20353
153
153
  arviz/tests/base_tests/test_diagnostics_numba.py,sha256=2G5O-7Hz66DSaHIZtjs2XL45RezYnXQZH6Dg2Ow-p4Q,2847
154
154
  arviz/tests/base_tests/test_helpers.py,sha256=PogHpWCMBEtkuzKt9jGQ8uIPg0cLDwztXxOnPSPNyVE,669
155
155
  arviz/tests/base_tests/test_labels.py,sha256=X08vTMmcgXkYGbE2Qnu_UUDSTAIvSNKdnyqoWwmj008,1686
156
156
  arviz/tests/base_tests/test_plot_utils.py,sha256=lwDZYDNrlEOKP-asJv6qu3sH_4y-FiHcFlqnMTpZyhw,11771
157
157
  arviz/tests/base_tests/test_plots_bokeh.py,sha256=1JqUqLKUb1g4c4w41K3j_LCT4eqb3u1qGnYbUuJMHPE,39148
158
- arviz/tests/base_tests/test_plots_matplotlib.py,sha256=l9usdmjdI8RV954rknfJvcC-wwnoaRtqJ8wN2SukH1I,65818
158
+ arviz/tests/base_tests/test_plots_matplotlib.py,sha256=sRn-jWzBeCkk49i8DO_a1l9WXoia269sANOQfPpqYjQ,66197
159
159
  arviz/tests/base_tests/test_rcparams.py,sha256=b9ueOXd9C0xiUIqgS0qnzvalHFgTFK7sUqL8UAzgJNs,10851
160
- arviz/tests/base_tests/test_stats.py,sha256=uBrlHdwLQ9w9bP4Cq454qoZ754Xll1kYOpxEr2AwZF4,32385
160
+ arviz/tests/base_tests/test_stats.py,sha256=zEK8uKvXBFpnLQPxoHkM5L9-KWqHQXvUcWAzKGMGgFQ,32809
161
161
  arviz/tests/base_tests/test_stats_ecdf_utils.py,sha256=p1FnQzlC0fjjKDFfhbHIrrbwAVhLiygH4J0aarx89A0,6038
162
162
  arviz/tests/base_tests/test_stats_numba.py,sha256=wGXgNuSO_gwJajoYtXSgpIe88PcBRyIkRihxC8paR-o,1582
163
163
  arviz/tests/base_tests/test_stats_utils.py,sha256=Udkw8tODs8mLt3_hO3HgNczrU0n09IJrML2agXF-upQ,13864
@@ -176,8 +176,8 @@ arviz/wrappers/__init__.py,sha256=d8GTUuBW_30LyDyk6qn2MAnvg-GZCeUw_i5SUPqaa1w,35
176
176
  arviz/wrappers/base.py,sha256=Vvh330pdzIvBEaikHsDP1ej6L2jCZZ0Dqj5TvUbYesI,9134
177
177
  arviz/wrappers/wrap_pymc.py,sha256=ltKv55aG0WTWXVDJuff5TXkgJJ_ESLvlT-JPlh3yHAg,1143
178
178
  arviz/wrappers/wrap_stan.py,sha256=c40brlajoPcc3xk00xI9Hqc-y0xcbAmFAIZOtfXWeqo,5525
179
- arviz-0.20.0.dist-info/LICENSE,sha256=xllut76FgcGL5zbIRvuRc7aezPbvlMUTWJPsVr2Sugg,11358
180
- arviz-0.20.0.dist-info/METADATA,sha256=xxMeqVgWrA6YkcGKDSJhbCyn-FKRuIBqlUIl8t1Qess,8848
181
- arviz-0.20.0.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
182
- arviz-0.20.0.dist-info/top_level.txt,sha256=5MFvqrTtYRWsIx-SjKuFIUHtrnVJq0Ngd0Nc2_etQhE,6
183
- arviz-0.20.0.dist-info/RECORD,,
179
+ arviz-0.21.0.dist-info/LICENSE,sha256=xllut76FgcGL5zbIRvuRc7aezPbvlMUTWJPsVr2Sugg,11358
180
+ arviz-0.21.0.dist-info/METADATA,sha256=3zSEB4npy44RXZtTxQVEkIvjvCqbDXQ9s6vsAyxvXmg,8848
181
+ arviz-0.21.0.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
182
+ arviz-0.21.0.dist-info/top_level.txt,sha256=5MFvqrTtYRWsIx-SjKuFIUHtrnVJq0Ngd0Nc2_etQhE,6
183
+ arviz-0.21.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.44.0)
2
+ Generator: bdist_wheel (0.45.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5