Since version 3, the sampler of emcee is in emcee.EnsembleSampler. However, PinNUTS still uses emcee.sampler.Sampler from emcee v2. This makes emcee_pinnuts.py unusable, unless an outdated version of emcee is used. The example in imf_examples.py runs fine if Sampler is replaced by EnsembleSampler in emcee_nuts.py, but of course I cannot say if any additional changes are required.