0

我想根据类实现一个特定的分布scipy.stats.rv_continuous,我想提供我自己的实现,_rvs 但我不明白其中包含哪些参数(它只是*args在函数声明中)。

特别是,我看不到size参数如何_rvs通过函数调用(在线源代码rv_generic.rvs中的第 665 行)输入到调用中。

我的分布没有任何参数(除了locand scale),所以如果_rvs只需要返回 1 个随机值,我可以用一个空参数列表来做到这一点,但它似乎需要返回一个(平面)随机值数组,如何获取要返回的元素数量?

4

1 回答 1

1

该类scipy.stats.rv_continuous是 的子类rv_generic。后者定义了一个函数,该函数在将其变量设置为或特定数字后rv_generic.rvs调用。这是通过读取存储在其中的关键字参数并检查参数来完成的。self._rvsself._sizeNone**kwdssize

通常,当self._sizeis时None,分布返回一个标量,否则返回一个长度数组self._size

于 2012-08-15T20:00:41.997 回答