scipy.stats.

order_statistic#

scipy.stats.order_statistic(X, /, *, r, n)[Quelle]#

Wahrscheinlichkeitsverteilung einer Ordnungsstatistik

Gibt eine Zufallsvariable zurück, die der zugrundeliegenden Verteilung der \(r^{\text{ten}}\) Ordnungsstatistik einer Stichprobe von \(n\) Beobachtungen einer Zufallsvariable \(X\) folgt.

Parameter:
XContinuousDistribution

Die Zufallsvariable \(X\)

rarray_like

Der (positive ganze) Rang der Ordnungsstatistik \(r\)

narray_like

Die (positive ganze) Stichprobengröße \(n\)

Rückgabe:
YContinuousDistribution

Eine Zufallsvariable, die der Verteilung der vorgeschriebenen Ordnungsstatistik folgt.

Hinweise

Wenn wir \(n\) Beobachtungen einer kontinuierlichen Zufallsvariable \(X\) machen und diese in aufsteigender Reihenfolge sortieren \(X_{(1)}, \dots, X_{(r)}, \dots, X_{(n)}\), dann ist \(X_{(r)}\) als die \(r^{\text{te}}\) Ordnungsstatistik bekannt.

Wenn die Dichtefunktion (PDF), die kumulative Verteilungsfunktion (CDF) und die komplementäre kumulative Verteilungsfunktion (CCDF) der zugrundeliegenden math:X als \(f\), \(F\) und \(F'\) bezeichnet werden, dann ist die Dichtefunktion der zugrundeliegenden math:X_{(r)} gegeben durch

\[f_r(x) = \frac{n!}{(r-1)! (n-r)!} f(x) F(x)^{r-1} F'(x)^{n - r}\]

Die CDF und andere Methoden der Verteilung von \(X_{(r)}\) werden unter Verwendung der Tatsache berechnet, dass \(X = F^{-1}(U)\), wobei \(U\) eine standardmäßige gleichverteilte Zufallsvariable ist, und dass die Ordnungsstatistiken von Beobachtungen von U einer Beta-Verteilung folgen, \(B(r, n - r + 1)\).

Referenzen

[1]

Ordnungsstatistik. Wikipedia. https://en.wikipedia.org/wiki/Order_statistic

Beispiele

Nehmen wir an, wir sind an Ordnungsstatistiken von Stichproben der Größe fünf interessiert, die aus der Standardnormalverteilung gezogen wurden. Stellen Sie die Dichtefunktion jeder Ordnungsstatistik dar und vergleichen Sie sie mit einem normalisierten Histogramm aus einer Simulation.

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> from scipy import stats
>>>
>>> X = stats.Normal()
>>> data = X.sample(shape=(10000, 5))
>>> sorted = np.sort(data, axis=1)
>>> Y = stats.order_statistic(X, r=[1, 2, 3, 4, 5], n=5)
>>>
>>> ax = plt.gca()
>>> colors = plt.rcParams['axes.prop_cycle'].by_key()['color']
>>> for i in range(5):
...     y = sorted[:, i]
...     ax.hist(y, density=True, bins=30, alpha=0.1, color=colors[i])
>>> Y.plot(ax=ax)
>>> plt.show()
../../_images/scipy-stats-order_statistic-1.png