scipy.stats.

relfreq#

scipy.stats.relfreq(a, numbins=10, defaultreallimits=None, weights=None)[Quellcode]#

Gibt ein relatives Häufigkeitshistogramm zurück, das die Funktion histogram verwendet.

Ein relatives Häufigkeitshistogramm ist eine Zuordnung der Anzahl der Beobachtungen in jedem der Behälter relativ zur Gesamtzahl der Beobachtungen.

Parameter:
aarray_like

Eingabearray.

numbinsint, optional

Die Anzahl der Behälter, die für das Histogramm verwendet werden sollen. Standard ist 10.

defaultreallimitstuple (untere, obere), optional

Die unteren und oberen Werte für den Bereich des Histogramms. Wenn kein Wert angegeben wird, wird ein Bereich verwendet, der etwas größer als der Bereich der Werte in a ist. Genauer gesagt (a.min() - s, a.max() + s), wobei s = (1/2)(a.max() - a.min()) / (numbins - 1).

weightsarray_like, optional

Die Gewichte für jeden Wert in a. Standard ist None, was jedem Wert ein Gewicht von 1,0 gibt

Rückgabe:
frequencyndarray

Behälterwerte der relativen Häufigkeit.

lowerlimitfloat

Untere reale Grenze.

binsizefloat

Breite jedes Behälters.

extrapointsint

Zusätzliche Punkte.

Beispiele

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> from scipy import stats
>>> rng = np.random.default_rng()
>>> a = np.array([2, 4, 1, 2, 3, 2])
>>> res = stats.relfreq(a, numbins=4)
>>> res.frequency
array([ 0.16666667, 0.5       , 0.16666667,  0.16666667])
>>> np.sum(res.frequency)  # relative frequencies should add up to 1
1.0

Erstellen Sie eine Normalverteilung mit 1000 Zufallswerten

>>> samples = stats.norm.rvs(size=1000, random_state=rng)

Relative Häufigkeiten berechnen

>>> res = stats.relfreq(samples, numbins=25)

Wertebereich für x berechnen

>>> x = res.lowerlimit + np.linspace(0, res.binsize*res.frequency.size,
...                                  res.frequency.size)

Relatives Häufigkeitshistogramm plotten

>>> fig = plt.figure(figsize=(5, 4))
>>> ax = fig.add_subplot(1, 1, 1)
>>> ax.bar(x, res.frequency, width=res.binsize)
>>> ax.set_title('Relative frequency histogram')
>>> ax.set_xlim([x.min(), x.max()])
>>> plt.show()
../../_images/scipy-stats-relfreq-1.png