scipy.stats.rv_discrete.

expect#

rv_discrete.expect(func=None, args=(), loc=0, lb=None, ub=None, conditional=False, maxcount=1000, tolerance=1e-10, chunksize=32)[Quellcode]#

Berechnet den Erwartungswert einer Funktion bezüglich der Verteilung für diskrete Verteilungen mittels numerischer Summation.

Parameter:
funccallable, optional

Funktion, für die der Erwartungswert berechnet wird. Nimmt nur ein Argument. Standardmäßig die Identitätsabbildung f(k) = k.

argstuple, optional

Formparameter der Verteilung.

locfloat, optional

Lokationsparameter. Standardwert ist 0.

lb, ubint, optional

Untere und obere Schranke für die Summation, Standardwert ist auf die Träger der Verteilung festgelegt, einschließlich (lb <= k <= ub).

conditionalbool, optional

Wenn wahr, dann wird der Erwartungswert durch die bedingte Wahrscheinlichkeit des Summationsintervalls korrigiert. Der Rückgabewert ist der Erwartungswert der Funktion func, bedingt darauf, dass sie sich im gegebenen Intervall befindet (k, sodass lb <= k <= ub). Standardmäßig False.

maxcountint, optional

Maximale Anzahl der zu evaluierenden Terme (um eine Endlosschleife für eine unendliche Summe zu vermeiden). Standardwert ist 1000.

tolerancefloat, optional

Absolute Toleranz für die Summation. Standardwert ist 1e-10.

chunksizeint, optional

Iteriert über den Träger einer Verteilung in Blöcken dieser Größe. Standardwert ist 32.

Rückgabe:
expectfloat

Erwartungswert.

Hinweise

Bei stark schwanzigen Verteilungen kann der Erwartungswert existieren oder auch nicht, abhängig von der Funktion func. Wenn er existiert, die Summe aber langsam konvergiert, kann die Genauigkeit des Ergebnisses eher gering sein. Zum Beispiel bei zipf(4) ist die Genauigkeit für den Mittelwert, die Varianz im Beispiel nur 1e-5. Das Erhöhen von maxcount und/oder chunksize kann das Ergebnis verbessern, aber auch Zipf sehr langsam machen.

Die Funktion ist nicht vektorisiert.