Skip to content

Commit 6683916

Browse files
committed
Experiment a bit
1 parent 1e7d91f commit 6683916

File tree

2 files changed

+2
-7
lines changed

2 files changed

+2
-7
lines changed

pymc/sampling.py

+2-4
Original file line numberDiff line numberDiff line change
@@ -2032,8 +2032,6 @@ def sample_posterior_predictive_w(
20322032
weighted models (default), or a dictionary with variable names as keys, and samples as
20332033
numpy arrays.
20342034
"""
2035-
raise NotImplementedError(f"sample_posterior_predictive_w has not yet been ported to PyMC 4.0.")
2036-
20372035
if isinstance(traces[0], InferenceData):
20382036
n_samples = [
20392037
trace.posterior.sizes["chain"] * trace.posterior.sizes["draw"] for trace in traces
@@ -2140,13 +2138,13 @@ def sample_posterior_predictive_w(
21402138
# TODO sample_posterior_predictive_w is currently only work for model with
21412139
# one observed.
21422140
# XXX: This needs to be refactored
2143-
# ppc[var.name].append(draw_values([var], point=param, size=size[idx])[0])
2144-
raise NotImplementedError()
2141+
ppcl[var.name].append(draw([var])[0])
21452142

21462143
except KeyboardInterrupt:
21472144
pass
21482145
else:
21492146
ppcd = {k: np.asarray(v) for k, v in ppcl.items()}
2147+
return ppcd
21502148
if not return_inferencedata:
21512149
return ppcd
21522150
ikwargs: Dict[str, Any] = dict(model=models)

pymc/tests/test_sampling.py

-3
Original file line numberDiff line numberDiff line change
@@ -935,9 +935,6 @@ def test_deterministics_out_of_idata(self, multitrace):
935935
assert np.all(np.abs(ppc.posterior_predictive.c + 4) <= 0.1)
936936

937937

938-
@pytest.mark.xfail(
939-
reason="sample_posterior_predictive_w not refactored for v4", raises=NotImplementedError
940-
)
941938
class TestSamplePPCW(SeededTest):
942939
def test_sample_posterior_predictive_w(self):
943940
data0 = np.random.normal(0, 1, size=50)

0 commit comments

Comments
 (0)