拥有beta对象的实例,如何取回参数a和b?
有属性a和b,但它似乎意味着我所期望的其他东西:
>>> import scipy
>>> scipy.__version__
'0.19.1'
>>> from scipy import stats
>>> my_beta = stats.beta(a=1, b=5)
>>> my_beta.a, my_beta.b
(0.0, 1.0)
有没有办法获得分发参数?我总是可以装一个巨大的rvs样本,但这看起来很傻:)
答案 0 :(得分:1)
使用my_beta = stats.beta(a=1, b=5)
等调用创建“冻结”分布时,位置和关键字参数将分别保存为返回对象上的属性args
和kwds
。因此,在您的情况下,您可以在字典my_beta.kwds
中访问这些值:
In [10]: from scipy import stats
In [11]: my_beta = stats.beta(a=1, b=5)
In [12]: my_beta.kwds
Out[12]: {'a': 1, 'b': 5}
正如您所猜测的,属性my_beta.a
和my_beta.b
是不同的。它们定义了概率分布support的终点:
In [13]: my_beta.a
Out[13]: 0.0
In [14]: my_beta.b
Out[14]: 1.0