numpy.random — Zufallszahlengenerierung¶
Das Submodul numpy.random stellt eine Generator-Klasse bereit, die Stichproben aus gängigen Wahrscheinlichkeitsverteilungen zieht. Der zugrunde liegende Algorithmus ist ein permutierter kongruenter Generator (PCG); Einzelheiten finden Sie unter https://www.pcg-random.org/.
Ein Generator ist ein zustandsbehaftetes Objekt: Jeder Aufruf einer seiner Stichprobenmethoden verändert den internen Zustand, sodass aufeinanderfolgende Aufrufe unabhängige Stichproben zurückgeben. Ausgabe-Arrays haben stets den dtype numpy.float.
Klassen¶
- class numpy.random.Generator(seed: int | tuple[int, ...] | None = None)¶
Erzeugt einen neuen Pseudozufallszahlengenerator.
- Parameter:
seed – der Seed, der zur Initialisierung des Generatorzustands verwendet wird. Wird eine Ganzzahl angegeben, wird sie direkt verwendet. Wird ein Tupel von Ganzzahlen angegeben, wird statt einer einzelnen Instanz ein Tupel unabhängig geseedeter
Generator-Objekte (eines pro Element) zurückgegeben. WirdNoneangegeben, wird ein plattformspezifischer Standard-Seed verwendet (sofern zur Build-Zeit konfiguriert); andernfalls wird einValueErrorausgelöst.- Verursacht:
TypeError – wenn seed weder
None, eine Ganzzahl noch ein Tupel von Ganzzahlen ist.ValueError – wenn seed
Noneist und kein Standard-Seed konfiguriert ist.
- normal(loc: float = 0.0, scale: float = 1.0, size: int | tuple[int, ...] | None = None) float | ndarray¶
Zieht Stichproben aus einer Normalverteilung (Gauß-Verteilung).
- Parameter:
loc – der Mittelwert (das Zentrum) der Verteilung.
scale – die Standardabweichung (Breite) der Verteilung. Muss nicht-negativ sein.
size – die Form der Ausgabe. Bei einer Ganzzahl wird ein eindimensionales Array dieser Länge zurückgegeben. Bei einem Tupel wird ein Array dieser Form zurückgegeben. Bei
None(Standardwert) wird ein einzelner Python-floatzurückgegeben.
- Rückgabe:
entweder ein Python-
floatoder ein float-numpy.ndarrayder angeforderten Form.- Verursacht:
ValueError – wenn die angeforderte Form
ULAB_MAX_DIMSüberschreitet.TypeError – wenn size weder
None, eine Ganzzahl noch ein Tupel ist.
Die Stichproben werden mit der Box-Muller-Transformation erzeugt.
- random(size: int | tuple[int, ...] | None = None, *, out: ndarray | None = None) float | ndarray¶
Zieht Stichproben aus der Gleichverteilung über dem halboffenen Intervall
[0.0, 1.0).- Parameter:
size – die Form der Ausgabe. Bei einer Ganzzahl wird ein eindimensionales Array dieser Länge zurückgegeben. Bei einem Tupel wird ein Array dieser Form zurückgegeben. Wenn
None(Standardwert) und out ebenfallsNoneist, wird ein einzelner Python-floatzurückgegeben.out – ein optionales vorab allokiertes, dichtes float-
numpy.ndarray, das die Stichproben aufnimmt. Wenn sowohl size als auch out angegeben werden, müssen ihre Formen übereinstimmen.
- Rückgabe:
ein Python-
float, ein neuesnumpy.ndarrayoder out (mit Stichproben gefüllt), je nach Argumenten.- Verursacht:
TypeError – wenn size einen nicht unterstützten Typ hat, oder out kein ndarray ist, oder out nicht den dtype
floathat.ValueError – wenn die angeforderte Form
ULAB_MAX_DIMSüberschreitet, wenn size undout.shapenicht übereinstimmen, oder wenn out nicht zusammenhängend ist.
- uniform(low: float = 0.0, high: float = 1.0, size: int | tuple[int, ...] | None = None) float | ndarray¶
Zieht Stichproben aus der Gleichverteilung über dem halboffenen Intervall
[low, high).- Parameter:
low – die untere Schranke (inklusive) der Verteilung.
high – die obere Schranke (exklusive) der Verteilung.
size – die Form der Ausgabe. Bei einem Tupel wird ein Array dieser Form zurückgegeben. Bei
None(Standardwert) wird ein einzelner Python-floataus[0.0, 1.0)zurückgegeben (die Schranken low/high werden im skalaren Fall ignoriert).
- Rückgabe:
entweder ein Python-
floatoder ein float-numpy.ndarrayder angeforderten Form.- Verursacht:
ValueError – wenn die angeforderte Form
ULAB_MAX_DIMSüberschreitet.TypeError – wenn size weder
Nonenoch ein Tupel ist.
Bei identischen Standardargumenten erzeugt
uniform()dieselbe Folge wierandom().