moment#
- scipy.stats.moment(a, order=1, axis=0, nan_policy='propagate', *, center=None, keepdims=False)[Quelle]#
Berechnet das n-te Moment um den Mittelwert für eine Stichprobe.
Ein Moment ist ein spezifisches quantitatives Maß für die Form einer Punktmenge. Es wird oft verwendet, um Schiefheits- und Wölbungskoeffizienten zu berechnen, da es eine enge Beziehung zu ihnen hat.
- Parameter:
- aarray_like
Eingabearray.
- orderint oder 1-D array_like von ints, optional
Ordnung des zentralen Moments, das zurückgegeben wird. Standard ist 1.
- axisint oder None, Standard: 0
Wenn es sich um eine ganze Zahl handelt, ist dies die Achse des Eingabearrays, entlang der die Statistik berechnet wird. Die Statistik jedes Achsen-Slices (z. B. Zeile) der Eingabe erscheint dann in einem entsprechenden Element der Ausgabe. Wenn
None, wird die Eingabe vor der Berechnung der Statistik geglättet.- nan_policy{‘propagate’, ‘omit’, ‘raise’}
Definiert, wie Eingabe-NaNs behandelt werden.
propagate: Wenn ein NaN in der Achsen-Slice (z. B. Zeile) vorhanden ist, entlang der die Statistik berechnet wird, wird der entsprechende Eintrag der Ausgabe NaN sein.omit: NaNs werden bei der Berechnung weggelassen. Wenn im Achsen-Slice, entlang dem die Statistik berechnet wird, nicht genügend Daten verbleiben, wird der entsprechende Eintrag der Ausgabe NaN sein.raise: Wenn ein NaN vorhanden ist, wird einValueErrorausgelöst.
- centerfloat oder None, optional
Der Punkt, um den die Momente gebildet werden. Dies kann der Stichprobenmittelwert, der Ursprung oder ein beliebiger anderer Punkt sein. Wenn None (Standard) wird das Zentrum als Stichprobenmittelwert berechnet.
- keepdimsbool, Standard: False
Wenn dies auf True gesetzt ist, bleiben die reduzierten Achsen im Ergebnis als Dimensionen mit der Größe eins erhalten. Mit dieser Option wird das Ergebnis korrekt gegen das Eingabearray gestreut (broadcasted).
- Rückgabe:
- n-tes Moment um das `center`ndarray oder float
Das entsprechende Moment entlang der gegebenen Achse oder über alle Werte, wenn axis None ist. Der Nenner für die Momentberechnung ist die Anzahl der Beobachtungen, es wird keine Freiheitsgradkorrektur durchgeführt.
Hinweise
Das k-te Moment einer Datenstichprobe ist
\[m_k = \frac{1}{n} \sum_{i = 1}^n (x_i - c)^k\]Wobei n die Anzahl der Stichproben ist und c das Zentrum ist, um das das Moment berechnet wird. Diese Funktion verwendet Exponentiation durch Quadrate [1] zur Effizienz.
Beachten Sie, dass, wenn a ein leeres Array ist (
a.size == 0), ein Arraymomentmit einem Element (moment.size == 1) genauso behandelt wird wie ein Skalarmoment(np.isscalar(moment)). Dies kann zu Arrays mit unerwarteter Form führen.Seit SciPy 1.9 werden
np.matrix-Eingaben (für neuen Code nicht empfohlen) vor der Berechnung innp.ndarraykonvertiert. In diesem Fall ist die Ausgabe eine Skalar- odernp.ndarraymit geeigneter Form anstelle eines 2D-np.matrix. Ebenso werden, während maskierte Elemente von Masked Arrays ignoriert werden, die Ausgabe eine Skalar- odernp.ndarrayanstelle eines Masked Arrays mitmask=Falsesein.momenthat experimentelle Unterstützung für Python Array API Standard-kompatible Backends zusätzlich zu NumPy. Bitte erwägen Sie, diese Funktionen zu testen, indem Sie die UmgebungsvariableSCIPY_ARRAY_API=1setzen und CuPy-, PyTorch-, JAX- oder Dask-Arrays als Array-Argumente übergeben. Die folgenden Kombinationen von Backend und Gerät (oder anderer Fähigkeit) werden unterstützt.Bibliothek
CPU
GPU
NumPy
✅
n/a
CuPy
n/a
✅
PyTorch
✅
✅
JAX
⚠️ kein JIT
⚠️ kein JIT
Dask
⚠️ berechnet Graph
n/a
Siehe Unterstützung für den Array API Standard für weitere Informationen.
Referenzen
Beispiele
>>> from scipy.stats import moment >>> moment([1, 2, 3, 4, 5], order=1) 0.0 >>> moment([1, 2, 3, 4, 5], order=2) 2.0