I’m using pymc3 to do some Bayesian A/B testing. The beauty of this approach – in contrast to traditional frequentist approaches – is that there are a variety of metrics you can generate and learn a hell of a lot more about our experiment.
This requires computing the joint distribution of the sampled posteriors, posterior(groupA) * posterior(groupB). I’ve got these sampled postierors, but I’m unsure how to change them into a joint dist in pymc3.
I may not have nailed the details. but hopefully that gives you some idea of the direction to go.
Two other things:
You don’t need to explicitly create the step. pm.sample() will automatically infer what step method is necessary given your model.
When asking for an inferenceData object, it’s conventional to call the return value idata (so that you remember that there is more than just the MCMC trace stored inside). Stylistic choice, but something you might want to be aware of.