scipy.stats.

jarque_bera#

scipy.stats.jarque_bera(x, *, axis=None, nan_policy='propagate', keepdims=False)[Quellcode]#

Führt den Jarque-Bera-Anpassungstest für Stichprobendaten durch.

Der Jarque-Bera-Test prüft, ob die Stichprobendaten die Schiefe und Kurtosis aufweisen, die einer Normalverteilung entsprechen.

Beachten Sie, dass dieser Test nur für eine ausreichend große Anzahl von Datenstichproben (> 2000) funktioniert, da die Teststatistik asymptotisch einer Chi-Quadrat-Verteilung mit 2 Freiheitsgraden folgt.

Parameter:
xarray_like

Beobachtungen einer Zufallsvariablen.

axisint oder None, Standard: None

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 ein ValueError ausgelöst.

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:
resultSignificanceResult

Ein Objekt mit den folgenden Attributen

statisticfloat

Die Teststatistik.

pvaluefloat

Der p-Wert für den Hypothesentest.

Siehe auch

Jarque-Bera-Anpassungstest

Erweitertes Beispiel

Hinweise

Seit SciPy 1.9 werden np.matrix-Eingaben (für neuen Code nicht empfohlen) vor der Berechnung in np.ndarray konvertiert. In diesem Fall ist die Ausgabe eine Skalar- oder np.ndarray mit geeigneter Form anstelle eines 2D-np.matrix. Ebenso werden, während maskierte Elemente von Masked Arrays ignoriert werden, die Ausgabe eine Skalar- oder np.ndarray anstelle eines Masked Arrays mit mask=False sein.

jarque_bera bietet 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 Umgebungsvariable SCIPY_ARRAY_API=1 setzen und CuPy-, PyTorch-, JAX- oder Dask-Arrays als Array-Argumente übergeben. Die folgenden Kombinationen aus 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

[1]

Jarque, C. und Bera, A. (1980) „Efficient tests for normality, homoscedasticity and serial independence of regression residuals“, 6 Econometric Letters 255-259.

Beispiele

>>> import numpy as np
>>> from scipy import stats
>>> rng = np.random.default_rng()
>>> x = rng.normal(0, 1, 100000)
>>> jarque_bera_test = stats.jarque_bera(x)
>>> jarque_bera_test
Jarque_beraResult(statistic=3.3415184718131554, pvalue=0.18810419594996775)
>>> jarque_bera_test.statistic
3.3415184718131554
>>> jarque_bera_test.pvalue
0.18810419594996775

Ein detaillierteres Beispiel finden Sie unter Jarque-Bera-Anpassungstest.