Arviz.compare failure

Hello,

I’m using arviz 0.21.0 (latest).

I’m getting an error that popped in some prior questions that looks like it was a solved bug.

my models both look like this, but with different intercept terms:

mlm_0 = bmb.Model(
“relief ~ 1 + (1| lumped_issue) + log_queue”
, center_predictors=False
, data=sample
, priors=priors
, noncentered=True
, family=“bernoulli”
)

The error message I get is this:

AttributeError: Encountered error in ELPD computation of compare.
~/Documents/projects/response-models/.pixi/envs/default/lib/python3.13/site-packages/arviz/stats/stats.py in ?(compare_dict, ic, method, b_samples, alpha, seed, scale, var_name)
    183         (ics_dict, scale, ic) = _calculate_ics(compare_dict, scale=scale, ic=ic, var_name=var_name)
    184     except Exception as e:
--> 185         raise e.__class__("Encountered error in ELPD computation of compare.") from e
    186     names = list(ics_dict.keys())
Hide Traceback
~/Documents/projects/response-models/.pixi/envs/default/lib/python3.13/site-packages/arviz/stats/stats.py in ?(compare_dict, scale, ic, var_name)
    408         ic = precomputed_ic
    409     else:
--> 410         ic = cast(ICKeyword, ic.lower())
    411     allowable = ["loo", "waic"] if NO_GET_ARGS else get_args(ICKeyword)

~/Documents/projects/response-models/.pixi/envs/default/lib/python3.13/site-packages/pandas/core/generic.py in ?(self, name)
   6297         ):
   6298             return self[name]
-> 6299         return object.__getattribute__(self, name)

AttributeError: 'ELPDData' object has no attribute 'lower'

The above exception was the direct cause of the following exception:

AttributeError                            Traceback (most recent call last)
Cell In[250], line 1
----> 1 az.compare(loo0, loo1)

File ~/Documents/projects/response-models/.pixi/envs/default/lib/python3.13/site-packages/arviz/stats/stats.py:185, in compare(compare_dict, ic, method, b_samples, alpha, seed, scale, var_name)
    183     (ics_dict, scale, ic) = _calculate_ics(compare_dict, scale=scale, ic=ic, var_name=var_name)
    184 except Exception as e:
--> 185     raise e.__class__("Encountered error in ELPD computation of compare.") from e
    186 names = list(ics_dict.keys())
    187 if ic in {"loo", "waic"}:

I installed arviz using pixi to create my environment which installs from conda-forge.

probably it’s something with the installation, but I can’t anything that looks wrong.

Posting here in case this issue is more widespread.

Thanks for your help with this!