【问题标题】:Product of two beta distributions两个 beta 分布的乘积
【发布时间】:2014-02-19 18:18:34
【问题描述】:

假设我有两个随机变量:

X ~ Beta(α1,β1)

Y ~ Beta(α2,β2)

我想计算 Z = XY(随机变量的乘积)的分布

使用scipy,我可以通过以下方式获取单个 Beta 版的 pdf:

from scipy.stats import beta
rv = beta(a, b)
x = np.linspace(start=0, stop=1, num=200)
my_pdf = rv.pdf(x)

但是两个 Beta 的乘积呢?我可以分析吗? (Python/Julia/R 解决方案很好)。

【问题讨论】:

    标签: python r statistics julia statsmodels


    【解决方案1】:

    FWIW,在 Python 中也一样

    from scipy import stats
    import statsmodels.api as sm
    import matplotlib.pyplot as plt
    
    N = 100000
    
    y = stats.beta(.5, .9).rvs(N)
    x = stats.beta(.9, .5).rvs(N)
    z = x*y
    dens_z = sm.nonparametric.KDEUnivariate(z)
    dens_z.fit()
    
    dens_x = sm.nonparametric.KDEUnivariate(x)
    dens_x.fit()
    
    dens_y = sm.nonparametric.KDEUnivariate(y)
    dens_y.fit()
    
    fig, ax = plt.subplots()
    ax.plot(dens_z.support, dens_z.density, label='z')
    ax.plot(dens_x.support, dens_x.density, label='x')
    ax.plot(dens_y.support, dens_y.density, label='y')
    ax.legend()
    plt.draw_if_interactive()
    

    【讨论】:

      【解决方案2】:

      对于分析解决方案,请查看this paperthis answer

      R中的数值方法

      set.seed(1) # for reproducability
      
      n <- 100000 # number of random variables
      
      # first beta distribution
      a1 <- 0.5
      b1 <- 0.9
      X <- rbeta(n, a1, b1)
      
      # second beta distribution
      a2 <- 0.9
      b2 <- 0.5
      Y <- rbeta(n, a2, b2)
      
      # calculate product
      Z <- X * Y
      
      # Have a look at the distributions
      plot(density(Z), col = "red", main = "Distributions")
      lines(density(X), lty = 2)
      lines(density(Y), lty = 2)
      

      【讨论】:

      • 谢谢 - 请问 - 为什么 Z 的分布偏向较低的 Z 值? (X 和 Y 似乎是相互对称的)
      • @user815423426 所有值都介于零和一之间。因此,乘以值总是会导致较低的值。
      • 太棒了。谢谢斯文 - 我假设这假设 XY 之间是独立的?还是没有?
      • @user815423426 是的,这是假设独立的。
      • @user815423426 我不知道多变量 beta 分布(在 R 中)的任何实现。
      猜你喜欢
      • 2012-02-18
      • 1970-01-01
      • 1970-01-01
      • 2013-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多