当前位置: 首页 > 面试题库 >

scipy,对数正态分布-参数

岳俊雅
2023-03-14
问题内容

我想使用python使对数正态分布适合我的数据scipy.stats.lognormal.fit。根据手册,fit返回
形状,位置,比例
参数。但是,对数正态分布通常只需要两个参数:平均值和标准偏差。

如何解释scipyfit函数的结果?如何获得均值和std.dev。


问题答案:

scipy中的分布以通用的方式通过两个参数的位置和比例进行编码,因此位置是loc将分布向左或向右移动的参数(),scale而是压缩或拉伸分布的参数。

对于两个参数的对数正态分布,“均值”和“ std dev”对应于log(scale)和shape(可以让loc=0)。

下面说明了如何拟合对数正态分布以找到感兴趣的两个参数:

In [56]: import numpy as np

In [57]: from scipy import stats

In [58]: logsample = stats.norm.rvs(loc=10, scale=3, size=1000) # logsample ~ N(mu=10, sigma=3)

In [59]: sample = np.exp(logsample) # sample ~ lognormal(10, 3)

In [60]: shape, loc, scale = stats.lognorm.fit(sample, floc=0) # hold location to 0 while fitting

In [61]: shape, loc, scale
Out[61]: (2.9212650122639419, 0, 21318.029350592606)

In [62]: np.log(scale), shape  # mu, sigma
Out[62]: (9.9673084420467362, 2.9212650122639419)


 类似资料:
  • 我想知道是否有可能从一个对数正态分布中得到一个聚合参数。在生态学中,通常使用负二项式中的聚集参数k,该参数度量数据中聚类或聚集或异质性的数量:越小的k意味着更多的异质性。负二项分布的方差为μ+μ2/k,当k变大时,方差接近均值,分布接近泊松分布。在R中,聚合参数称为size参数(Bolker,2008)。 当我在fitdistr中拟合我的数据时,我的数据比负二项式、gamma和Poisson更符合

  • 我如何在Python中用scipy计算它?谢谢

  • 问题内容: 我正在尝试模拟球迷到达体育场的情况。我相信系统本身不会有问题,但是风扇的到来遵循正态分布。 我的问题是: 我有一定的到达时间(例如100分钟和1000个风扇),我需要在分配之后的某个时间生成风扇的到达时间,例如->风扇x到达25分钟,风扇y到达54分钟,依此类推。 如何按照正态分布生成这些随机数? 我正在Java中执行此操作,并在Random类中找到了该方法,但是我不确定如何在我的情况

  • 我想生成一个截断的正态分布,其中任何一个R中都有已知的参数。注意,我不是在寻找伪随机数生成器。 假设I有一个均值为5,标准差为1的正态分布。我能画出一个截断正态分布的值吗,在点1和点10截断?

  • 在来自独立来源的随机数据集中,通常观察到数据的分布是正常的。 这意味着,在绘制具有水平轴中变量值的图形和垂直轴中的值的计数时,我们得到钟形曲线。 曲线的中心表示数据集的平均值。 在图中,百分之五十的值位于均值的左侧,另外百分之五十位于图的右侧。 这在统计学中称为正态分布。 R有四个内置函数来生成正态分布。 它们如下所述。 dnorm(x, mean, sd) pnorm(x, mean, sd)

  • (mu=exp(μ+1/2σ2)sigma=exp(2μ+σ2)(exp(σ2)-1) 我得到了5000的模拟信任度。