sample#
- Binomial.sample(shape=(), *, method=None, rng=None)[Quelle]#
Zufällige Stichprobe aus der Verteilung.
- Parameter:
- shapetuple von ints, Standard: ()
Die Form der zu ziehenden Stichprobe. Wenn die Parameter der Verteilung, die die Zufallsvariable zugrunde liegen, Arrays der Form
param_shapesind, hat das Ausgabearray die Formshape + param_shape.- method{None, ‘formula’, ‘inverse_transform’}
Die Strategie zur Erzeugung der Stichprobe. Standardmäßig (
None) wählt die Infrastruktur aus den folgenden Optionen, in der Reihenfolge der Priorität.'formula': eine spezifische Implementierung für die Verteilung'inverse_transform': Erzeugt eine gleichverteilte Stichprobe und gibt die inverse CDF für diese Argumente zurück.
Nicht alle method-Optionen sind für alle Verteilungen verfügbar. Wenn die ausgewählte method nicht verfügbar ist, wird ein NotImplementedError` ausgelöst.
- rng
numpy.random.Generatoroder scipy.stats.QMCEngine, optional Zustand des Pseudo- oder Quasi-Zufallszahlengenerators. Wenn rng None ist, wird ein neuer
numpy.random.Generatorunter Verwendung von Entropie aus dem Betriebssystem erstellt. Typen außernumpy.random.Generatorund scipy.stats.QMCEngine werden annumpy.random.default_rngübergeben, um einenGeneratorzu instanziieren.Wenn rng eine Instanz von scipy.stats.QMCEngine ist, die für die Verwendung von Scrambling konfiguriert ist, und shape nicht leer ist, dann ist jeder Slice entlang der nullten Achse des Ergebnisses eine „quasi-unabhängige“ Folge mit geringer Diskrepanz; das heißt, es handelt sich um verschiedene Sequenzen, die für die meisten praktischen Zwecke als statistisch unabhängig behandelt werden können. Separate Aufrufe von
sampleerzeugen neue quasi-unabhängige Folgen mit geringer Diskrepanz.
Referenzen
[1]Stichprobenentnahme (Statistik), Wikipedia, https://en.wikipedia.org/wiki/Sampling_(statistics)
Beispiele
Instanziieren Sie eine Verteilung mit den gewünschten Parametern
>>> import numpy as np >>> from scipy import stats >>> X = stats.Uniform(a=0., b=1.)
Erzeugt eine Pseudozufallsstichprobe
>>> x = X.sample((1000, 1)) >>> octiles = (np.arange(8) + 1) / 8 >>> np.count_nonzero(x <= octiles, axis=0) array([ 148, 263, 387, 516, 636, 751, 865, 1000]) # may vary
>>> X = stats.Uniform(a=np.zeros((3, 1)), b=np.ones(2)) >>> X.a.shape, (3, 2) >>> x = X.sample(shape=(5, 4)) >>> x.shape (5, 4, 3, 2)