scipy.stats.

gzscore#

scipy.stats.gzscore(a, *, axis=0, ddof=0, nan_policy='propagate')[Quelle]#

Berechnet den geometrischen Standardwert.

Berechnet den geometrischen z-Score jedes strikt positiven Wertes in der Stichprobe, relativ zum geometrischen Mittel und zur geometrischen Standardabweichung. Mathematisch kann der geometrische z-Score ausgewertet werden als

gzscore = log(a/gmu) / log(gsigma)

wobei gmu (bzw. gsigma) das geometrische Mittel (bzw. die geometrische Standardabweichung) ist.

Parameter:
aarray_like

Stichprobendaten.

axisint oder None, optional

Achse, entlang der operiert werden soll. Standard ist 0. Wenn None, wird über das gesamte Array a berechnet.

ddofint, optional

Freiheitsgradkorrektur bei der Berechnung der Standardabweichung. Standard ist 0.

nan_policy{‘propagate’, ‘raise’, ‘omit’}, optional

Definiert, wie mit NaNs im Eingabewert umgegangen wird. 'propagate' gibt NaN zurück, 'raise' löst einen Fehler aus, 'omit' führt die Berechnungen unter Ignorierung von NaN-Werten durch. Standard ist 'propagate'. Beachten Sie, dass bei der Einstellung 'omit' NaNs in der Eingabe auch in die Ausgabe propagiert werden, sie beeinflussen jedoch nicht die für die Nicht-NaN-Werte berechneten geometrischen z-Scores.

Rückgabe:
gzscorearray_like

Die geometrischen z-Scores, standardisiert durch das geometrische Mittel und die geometrische Standardabweichung des Eingabearrays a.

Siehe auch

gmean

Geometrisches Mittel

gstd

Geometrische Standardabweichung

zscore

Standardwert

Hinweise

Diese Funktion behält ndarray-Unterklassen bei und funktioniert auch mit Matrizen und Masked Arrays (sie verwendet asanyarray anstelle von asarray für Parameter).

Hinzugefügt in Version 1.8.

gzscore hat experimentelle Unterstützung für Backends, die mit dem Python Array API Standard kompatibel sind, zusätzlich zu NumPy. Bitte erwägen Sie, diese Funktionen zu testen, indem Sie eine Umgebungsvariable SCIPY_ARRAY_API=1 setzen und CuPy-, PyTorch-, JAX- oder Dask-Arrays als Array-Argumente bereitstellen. 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

Dask

n/a

Siehe Unterstützung für den Array API Standard für weitere Informationen.

Referenzen

Beispiele

Zufallsstichproben aus einer log-normalen Verteilung ziehen

>>> import numpy as np
>>> from scipy.stats import zscore, gzscore
>>> import matplotlib.pyplot as plt
>>> rng = np.random.default_rng()
>>> mu, sigma = 3., 1.  # mean and standard deviation
>>> x = rng.lognormal(mu, sigma, size=500)

Histogramm der Stichproben anzeigen

>>> fig, ax = plt.subplots()
>>> ax.hist(x, 50)
>>> plt.show()
../../_images/scipy-stats-gzscore-1_00_00.png

Histogramm der Stichproben anzeigen, standardisiert durch den klassischen zscore. Die Verteilung wird skaliert, ihre Form bleibt jedoch unverändert.

>>> fig, ax = plt.subplots()
>>> ax.hist(zscore(x), 50)
>>> plt.show()
../../_images/scipy-stats-gzscore-1_01_00.png

Demonstrieren, dass die Verteilung der geometrischen z-Scores skaliert und quasinormal ist

>>> fig, ax = plt.subplots()
>>> ax.hist(gzscore(x), 50)
>>> plt.show()
../../_images/scipy-stats-gzscore-1_02_00.png