【问题标题】:Confidence Interval Plot置信区间图
【发布时间】:2023-03-27 10:44:01
【问题描述】:

我有两个分布,我想比较它们的 95% 置信区间:

from scipy.stats import lognorm
from scipy.stats import uniform
import numpy as np
prior_fb = uniform(loc=0, scale=0.1)
post_fb = lognorm(s=np.log(1.15), scale=0.0076)

我可以得到 95% 的置信区间和两个分布的平均值:

prior_mean = prior_fb.mean()
prior_interval = prior_fb.interval(0.95)
post_mean = post_fb.mean()
post_interval = post_fb.interval(0.95)

我尝试生成随机变量并使用 Origin 的“区间图”功能绘制这些变量,但我认为 Origin 假设数据是正态分布,因此“区间图”并不真正代表 95% 区间:

先验的间隔应该从 0.0025 到 0.0975,由 prior_fb.interval(0.95) 给出。

如何使用 matplotlib 绘制和比较先验和后验的区间(和均值)?

【问题讨论】:

    标签: python matplotlib plot distribution


    【解决方案1】:

    我会使用 matplotlib 中的箱线图,您可以传递平均值而不是中值,并且可以传递置信区间:

    from matplotlib import pyplot
    fig, ax = pyplot.subplots()
    ax.boxplot([prior_fb.rvs(size=1000),post_fb.rvs(size=1000)],conf_intervals=[prior_interval,post_interval],usermedians=[prior_mean,post_mean],labels=['Prior','Post'])
    

    【讨论】:

      猜你喜欢
      • 2021-01-09
      • 2020-02-04
      • 2021-02-05
      • 2021-11-30
      • 1970-01-01
      • 2014-11-29
      • 1970-01-01
      • 1970-01-01
      • 2014-06-30
      相关资源
      最近更新 更多