我一直在寻找如何使用rv_continuous
的好教程或示例,但一直找不到。
我读到:
但它并不是真的那么有用(而且它缺少任何使用它的例子)。
我想做的事情的一个例子是,指定任何概率分布,并能够调用fit
,然后简单地拥有我想要的pdf,并且能够调用expect
,并获得所需的期望值。
到目前为止,我的理解是,要创建任何可能的发行版,我们需要为它创建自己的类,然后子类rv_continuous
。然后通过指定自定义的_pdf
或_cdf
,我们应该能够简单地使用rv_continuous
为我们提供的每个方法。Likeexpect
和fit
现在应该可用。
然而,对我来说真正神秘的是,如果我们不明确地告诉rv_continuous,指定概率分布的参数是什么,它真的能够正确地做所有这些方法吗?它是如何使用pdf或cdf的呢?
或者我只是误解了它的工作原理?
另外,如果你能提供一个简单的例子来说明它是如何工作的,以及如何使用expect
和/或fit
,那将是非常棒的!或者也许一个更好的教程或链接会很酷。
提前谢谢。
这里有一个教程:http://docs.scipy.org/doc/scipy/reference/tutorial/stats.html
基本上,
rv_continuous
用于子类化。如果需要scipy.stats中未定义的分布(其中超过70个),请使用它。关于它的工作原理。简而言之,它使用泛型代码路径:如果您的子类定义了
_pdf
,并且没有定义_logpdf
,那么它将继承以及一系列类似的方法(请参见https://github.com/scipy/scipy/blob/master/scipy/stats/_distn_infrastructure.py以获得精确的详细信息)。
重新设定参数。你可能是指形状参数吧?它们是通过
inspect
的_pdf
或_cdf
的签名自动推断的,请参见https://github.com/scipy/scipy/blob/master/scipy/stats/_distn_infrastructure.py#L617。 如果要绕过检查,请向实例的构造函数提供shapes
参数:[严格地说,这只适用于scipy 0.13及以上。早期版本使用了不同的机制,需要
shapes
属性。]相关问题 更多 >
编程相关推荐