python对数正态分布函数_scipy,对数正态分布-参数

首先,loc不是简单的线性移位分布,事实上loc有自己的统计意义,它意味着样本减去loc后会得到一个标准化的对数正态分布,其下限为零,这一点相当重要。

因此,当您指定“loc”或“floc”时,实际上您施加了一个非常强的催眠,即您假设这些样本有一个下限,而下限“恰好”是“loc”值。因此,scipy使用了不同的算法进行拟合,即:

如果您提供了loc信息,那么scipy将采用最大似然法来计算拟合参数,如果没有,它将使用数值求解器。

此外,您还可以阅读代码:

在scipy package stats/u continuous distns.py中

电话:3889。具体如下:def fit(self, data, *args, **kwds):

floc = kwds.get('floc', None)

if floc is None:

# loc is not fixed. Use the default fit method.

return super(lognorm_gen, self).fit(data, *args, **kwds)

f0 = (kwds.get('f0', None) or kwds.get('fs', None) or

kwds.get('fix_s', None))

fscale = kwds.get('fscale', None)

if len(args) > 1:

raise TypeError("Too many input arguments.")

for name in ['f0', 'fs', 'fix_s', 'floc', 'fscale', 'loc', 'scale',

'optimizer']:

kwds.pop(name, None)

if kwds:

raise TypeError("Unknown arguments: %s." % kwds)

# Special case: loc is fixed. Use the maximum likelihood formulas

# instead of the numerical solver.

此外,来自R社区的人可能会想,为什么python的输出与R不同。实际上,我不同意使用R作为“引用”,它只是一个软件,不同的软件有不同的算法风格。

例如,R的输出如下所示并不是错误,Python或其他类似Fortran的软件使用完全不同的算法:round(3.5)

[1] 4

round(2.5)

[1] 2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值