Example #1
0
def fun_extract_median_ess(sampler):
    # median ess
    # remove failed chains first
    sampler.remove_failed_chains()
    full_mcmc_tensor = get_params_mcmc_tensor(sampler=sampler)
    ess = ess_stan(full_mcmc_tensor)
    median_ess = numpy.median(ess)
    return ([median_ess], ["median_ess"])
print(samples[:,:,hidden_in_sigma2_indices])
#exit()
#samples[:,:,hidden_in_sigma2_indices] = numpy.exp(samples[:,:,hidden_in_sigma2_indices])

posterior_mean_hidden_in_sigma2 = numpy.mean(samples[:,:,hidden_in_sigma2_indices].reshape(-1,len(hidden_in_sigma2_indices)),axis=0)
posterior_median_hidden_in_sigma2 = numpy.median(samples[:,:,hidden_in_sigma2_indices].reshape(-1,len(hidden_in_sigma2_indices)),axis=0)
print("diagnostics sigma2")

print(diagnostics_stan(samples[:,:,hidden_in_sigma2_indices]))

print("posterior mean sigma2 {}".format(posterior_mean_hidden_in_sigma2))
print("posterior median sigma2 {}".format(posterior_median_hidden_in_sigma2))
#print(mcmc_samples_beta["indices_dict"])

full_mcmc_tensor = get_params_mcmc_tensor(sampler=sampler1)

print(get_short_diagnostics(full_mcmc_tensor))


out = sampler1.get_diagnostics(permuted=False)

print("divergent")
processed_diag = process_diagnostics(out,name_list=["divergent"])

print(processed_diag.sum(axis=1))

#print(processed_diag.shape)

#processed_energy = process_diagnostics(out,name_list=["prop_H"])