numpy.random — Generiranje slučajnih brojeva¶
Podmodul numpy.random pruža klasu Generator koja uzorkuje iz uobičajenih distribucija vjerojatnosti. Temeljni algoritam je permutirani kongruencijski generator (PCG); pojedinosti potražite na https://www.pcg-random.org/ .
Generator je objekt sa stanjem: svaki poziv jedne od njegovih metoda za uzorkovanje pomiče interno stanje, tako da uzastopni pozivi vraćaju neovisne uzorke. Izlazna polja uvijek su dtypea numpy.float.
Klase¶
- class numpy.random.Generator(seed: int | tuple[int, ...] | None = None)¶
Konstruira novi generator pseudoslučajnih brojeva.
- Parametri:
seed – sjeme koje se koristi za inicijalizaciju stanja generatora. Ako je dostavljen cijeli broj, on se koristi izravno. Ako je dostavljena n-torka cijelih brojeva, vraća se n-torka neovisno zasijanih objekata
Generator(jedan po elementu) umjesto jedne instance. Ako je dostavljenNone, koristi se zadano sjeme platforme (kada je takvo konfigurirano pri izgradnji); u protivnom se podižeValueError.- Podiže:
TypeError – ako seed nije
None, cijeli broj ili n-torka cijelih brojeva.ValueError – ako je seed
None, a nije konfigurirano zadano sjeme.
- normal(loc: float = 0.0, scale: float = 1.0, size: int | tuple[int, ...] | None = None) float | ndarray¶
Uzorkuje iz normalne (Gaussove) distribucije.
- Parametri:
loc – srednja vrijednost (središte) distribucije.
scale – standardna devijacija (širina) distribucije. Mora biti nenegativna.
size – oblik izlaza. Ako je cijeli broj, vraća se jednodimenzionalno polje te duljine. Ako je n-torka, vraća se polje tog oblika. Ako je
None(zadano), vraća se jedan Pythonfloat.
- Vraća:
ili Python
floatili floatnumpy.ndarraytraženog oblika.- Podiže:
ValueError – ako traženi oblik premašuje
ULAB_MAX_DIMS.TypeError – ako size nije ni
None, ni cijeli broj, ni n-torka.
Uzorci se generiraju pomoću Box-Mullerove transformacije.
- random(size: int | tuple[int, ...] | None = None, *, out: ndarray | None = None) float | ndarray¶
Uzorkuje iz uniformne distribucije na poluotvorenom intervalu
[0.0, 1.0).- Parametri:
size – oblik izlaza. Ako je cijeli broj, vraća se jednodimenzionalno polje te duljine. Ako je n-torka, vraća se polje tog oblika. Ako je
None(zadano), a i out jeNone, vraća se jedan Pythonfloat.out – neobavezno unaprijed alocirano, gusto, float
numpy.ndarraypolje za primanje uzoraka. Ako su dostavljeni i size i out, njihovi se oblici moraju podudarati.
- Vraća:
Python
float, novonumpy.ndarrayili out (popunjeno uzorcima), ovisno o argumentima.- Podiže:
TypeError – ako size ima nepodržan tip, ili out nije ndarray, ili out nije dtypea
float.ValueError – ako traženi oblik premašuje
ULAB_MAX_DIMS, ako se size iout.shapene podudaraju, ili ako out nije neprekinut u memoriji.
- uniform(low: float = 0.0, high: float = 1.0, size: int | tuple[int, ...] | None = None) float | ndarray¶
Uzorkuje iz uniformne distribucije na poluotvorenom intervalu
[low, high).- Parametri:
low – donja granica (uključiva) distribucije.
high – gornja granica (isključiva) distribucije.
size – oblik izlaza. Ako je n-torka, vraća se polje tog oblika. Ako je
None(zadano), vraća se jedan Pythonfloatizvučen iz[0.0, 1.0)(granice low/high zanemaruju se u skalarnom slučaju).
- Vraća:
ili Python
floatili floatnumpy.ndarraytraženog oblika.- Podiže:
ValueError – ako traženi oblik premašuje
ULAB_MAX_DIMS.TypeError – ako size nije ni
Noneni n-torka.
S identičnim zadanim argumentima,
uniform()proizvodi isti niz kaorandom().