比较幂律与其他分布

时间:2018-03-13 21:22:57

标签: python power-law

我正在使用Jeff Alstott的Python powerlaw包来尝试将我的数据拟合到幂律中。 Jeff的包是基于Clauset等人的论文,其中讨论了Powerlaw。

首先,我的数据的一些细节:

  1. 它是离散的(字数统计数据);
  2. 严重偏向左侧(高度偏斜)
  3. Leptokurtic (过度峰度大于10)
  4. 到目前为止我做了什么

    df_data是我的Dataframe,其中word_count是一个系列,包含大约1000个单词代币的字数统计数据。

    首先,我已经生成了 fit 对象:

    fit = powerlaw.Fit(data=df_data.word_count, discrete=True)
    

    接下来,我将我的数据的powerlaw分布与其他分布进行比较 - 即 lognormal 指数 lognormal_positive stretched_exponential truncated_powerlaw ,使用fit.distribution_compare(distribution_one,distribution_two)方法。

    作为distribute_compare方法的结果,我为每个比较获得了以下(r,p)元组:

    • fit.distribution_compare('power_law','lognormal')=(0.35617607052907196,0.5346696007)
    • fit.distribution_compare('power_law','exponential')=(397.3832646921206,5.3999952097178692e-06)
    • fit.distribution_compare('power_law','lognormal_positive')=(27.82736434863289,4.2257378698322223e-07)
    • fit.distribution_compare('power_law','stretched_exponential')=(1.37624682020371,0.2974292837452046)
    • fit.distribution_compare('power_law','truncated_power_law')=( - 0.0038373682383605,0.83159372694621)

    来自powerlaw文档:

      

    R:float

         

    两组似然的对数似然比。如果积极,   第一组可能性更有可能(概率也是如此)   产生它们的分布更适合数据)。如果   否定,反之亦然。

         

    p:float

         

    R的符号的重要性如果低于临界值   (通常.05)R的符号被认为是重要的。如果在上面   临界值R的符号被认为是统计学的   波动。

    根据powerlaw,指数和对数正态分布的比较结果,我倾向于说我有一个powerlaw分布。

    这是对测试结果的正确解释/假设吗?或许我错过了什么?

1 个答案:

答案 0 :(得分:1)

首先,虽然这些方法可能是由我,Cosma Shalizi和Mark Newman开发的,但我们的实现是在Matlab和R中。我认为你使用的python实现可能来自Jeff Alstott或Javier del Molino Matamala或者乔尔·奥恩斯坦(all of these are available off my website)。

现在,关于结果。似然比检验(LRT)不允许您断定您有或没有幂律分布。它只是一个模型比较工具,意味着它会评估幂律是否比某些替代方案更不适合您的数据。 (我这样说是因为LRT不是一种拟合方法。)因此,即使幂律分布在所有备选方案中都是赞成,它并不意味着你的数据 分享幂律。这只意味着幂律模型是一种不太可怕的数据统计模型,而不是替代品。

要评估幂律分布本身是否是统计上合理的模型,您应该使用半参数自举{{3}计算拟合幂律模型的 p 值。 }。如果 p> 0.1 ,则幂律模型优于LRT的替代方案,那么您可以在幂律分布后得出相对强大的数据支持

返回到您的特定结果:您的每个LRT比较产生一对(r,p),其中 r 是标准化的对数似然比和 p 是该比率的统计显着性。正在为 p -value测试的事情是 r 符号是否有意义。如果LRT的 p <0.05 ,那么正号表示有利于幂律模型。看看你的结果,我发现指数和lognormal_positive替代方案比幂律模型更适合数据。但是,lognormal,stretched_exponential和truncated_power_law都不是,这意味着这些替代方案与数据一样非常适合您的幂律模型。

如果没有来自幂律模型本身的假设检验的 p - 值,则LRT结果不能完全解释。但即使是部分解释也不符合幂律模式的强有力证据,因为两种非幂律模型与这些数据的幂律一样好(坏)。考虑到数据的正确偏差,指数模型真的比幂律更差,这一事实并不令人惊讶,所以没有什么可以写回家的。