サーチ…


正の実数の負の2項

from scipy.stats import rv_continuous
import numpy

class Neg_exp(rv_continuous): 
    def _cdf(self, x, lamda):
        return 1-numpy.exp(-lamda*x)
   
neg_exp = Neg_exp(name="Negative exponential", a=0)

print (neg_exp.pdf(0,.5))
print (neg_exp.pdf(5,.5))
print (neg_exp.cdf(5,.5))
print (neg_exp.stats(0.5))
print (neg_exp.rvs(0.5))

scipyはあなたが定義していない他の関数のパラメータと、あなたが定義した任意の関数呼び出しにおけるこれらのパラメータの順序を推定するので、_pdfまたは_cdfを定義することが不可欠です。この場合、分布パラメータλは1つだけである。ランダム変数値を表す変数は、最初に_pdfまたは_cdfの定義に現れます。

これらの関数のうちの1つだけを定義すると、scipyは他を数値で計算します。効率を上げるために、両方を定義します。同様に、最高の効率を得るために既知のパラメータに関して_statsを定義します。さもなければ、scipyは数値的な方法を使います。

ディストリビューションのサポートは、サブクラス化されるときではなく、クラスがインスタンス化されるときに定義されます(変数aはゼロに設定され、 bはデフォルトで無限大に設定されます)。クラスのインスタンスの1つが呼び出されたときにのみ、配布のパラメータが設定されることにも注意してください。最後の5行のコードと同様です。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow