scipy.stats.zipf中的参数是什么意思?

时间:2017-03-22 09:45:38

标签: python scipy statistics confidence-interval zipf

来自docs

  

zipf的概率质量函数是:

     

zipf.pmf(k,a)= 1 /(zeta(a)* k ** a)   对于k> = 1。

     

zipf将a作为形状参数。

     

上面的概率质量函数以“标准化”形式定义。要转移分布,请使用loc参数。具体来说,zipf.pmf(k,a,loc)与zipf.pmf(k-loc,a)相同。

ak指的是什么? “形状参数”是什么意思?

此外,在scipy.stats.zipf.interval中,还有一个alpha参数。

.interval()方法的描述很简单:

  

包含分布的alpha百分比的范围的端点

alpha参数的含义是什么?那是“置信区间”吗?

1 个答案:

答案 0 :(得分:3)

  

“形状参数”是什么意思?

顾名思义,形状参数决定了分布的形状。从形状参数

开始时,这可能是最容易解释的
  1. location 参数会改变分布,但保持不变。例如,正态分布的均值是位置参数。如果X通常使用平均值mu分发,则X + a通常以均值mu + a分发。

  2. scale 参数使分布更宽或更窄。例如,正态分布的标准偏差是标度参数。如果X通常以标准差sigma分发,则X * a通常以标准差sigma * a分发。

  3. 最后, shape 参数会更改分布的形状。例如,Gamma distribution有一个形状参数k,用于确定分布的偏差程度(=向一侧“倾斜”多少)。

  4.   

    但是ak指的是什么?

    k是由分布参数化的变量。使用zipf.pmf,您可以计算给定形状参数k的任何a的概率。下面的图表演示了a如何改变分布的形状(不同k的个体概率)。

    enter image description here

    a使得k的大值变得非常不可能,而较低a则较小kk可能较小。{ / p>

      

    alpha参数的含义是什么?那是“置信区间”吗?

    alpha 置信区间是错误的。这是置信度。我猜这就是你的意思。例如,alpha=0.95表示您有95%的置信区间。如果您从特定分布生成随机k,则其中95%将位于zipf.interval返回的范围内。

    情节代码:

    from scipy.stats import zipf
    import matplotlib.pyplot as plt
    import numpy as np
    
    k = np.linspace(0, 10, 101)
    
    for a in [1.3, 2.6]:
        p = zipf.pmf(k, a=a)
    
        plt.plot(k, p, label='a={}'.format(a), linewidth=2)
    
    plt.xlabel('k')
    plt.ylabel('probability')
    
    plt.legend()
    plt.show()