numpy.random --- Pembangkitan bilangan acak¶
Submodul numpy.random menyediakan kelas Generator yang mengambil sampel dari distribusi probabilitas umum. Algoritma yang mendasarinya adalah generator kongruensial terpermuasi (PCG); lihat https://www.pcg-random.org/ untuk detailnya.
Sebuah Generator adalah objek berstateful: setiap pemanggilan salah satu metode pengambilan sampelnya memajukan status internal, sehingga pemanggilan berturut-turut menghasilkan sampel yang independen. Array keluaran selalu bertipe dtype numpy.float.
Kelas¶
- class numpy.random.Generator(seed: int | tuple[int, ...] | None = None)¶
Membuat generator bilangan pseudo-acak baru.
- Parameter:
seed -- seed yang digunakan untuk menginisialisasi status generator. Jika bilangan bulat diberikan, nilai tersebut digunakan secara langsung. Jika tuple bilangan bulat diberikan, tuple objek
Generatoryang di-seed secara independen (satu per elemen) dikembalikan alih-alih satu instance tunggal. JikaNonediberikan, seed default platform digunakan (ketika satu dikonfigurasi pada waktu kompilasi); jika tidak,ValueErrorakan dimunculkan.- Pengecualian:
TypeError -- jika seed bukan
None, bilangan bulat, atau tuple bilangan bulat.ValueError -- jika seed adalah
Nonedan tidak ada seed default yang dikonfigurasi.
- normal(loc: float = 0.0, scale: float = 1.0, size: int | tuple[int, ...] | None = None) float | ndarray¶
Mengambil sampel dari distribusi normal (Gaussian).
- Parameter:
loc -- rata-rata (pusat) dari distribusi.
scale -- deviasi standar (lebar) dari distribusi. Harus tidak negatif.
size -- bentuk keluaran. Jika berupa bilangan bulat, array satu dimensi dengan panjang tersebut dikembalikan. Jika berupa tuple, array dengan bentuk tersebut dikembalikan. Jika
None(nilai default), sebuah Pythonfloattunggal dikembalikan.
- Kembali:
berupa Python
floatataunumpy.ndarraybertipe float dengan bentuk yang diminta.- Pengecualian:
ValueError -- jika bentuk yang diminta melebihi
ULAB_MAX_DIMS.TypeError -- jika size bukan
None, bilangan bulat, maupun tuple.
Sampel dihasilkan menggunakan transformasi Box-Muller.
- random(size: int | tuple[int, ...] | None = None, *, out: ndarray | None = None) float | ndarray¶
Mengambil sampel dari distribusi seragam pada interval setengah-terbuka
[0.0, 1.0).- Parameter:
size -- bentuk keluaran. Jika berupa bilangan bulat, array satu dimensi dengan panjang tersebut dikembalikan. Jika berupa tuple, array dengan bentuk tersebut dikembalikan. Jika
None(nilai default) dan out jugaNone, sebuah Pythonfloattunggal dikembalikan.out -- array float
numpy.ndarrayyang padat dan telah dialokasikan sebelumnya secara opsional untuk menerima sampel. Jika keduanya size dan out diberikan, bentuk mereka harus sesuai.
- Kembali:
berupa Python
float,numpy.ndarraybaru, atau out (diisi dengan sampel) tergantung pada argumen.- Pengecualian:
TypeError -- jika size memiliki tipe yang tidak didukung, atau out bukan ndarray, atau out tidak bertipe dtype
float.ValueError -- jika bentuk yang diminta melebihi
ULAB_MAX_DIMS, jika size danout.shapetidak cocok, atau jika out tidak kontinu.
- uniform(low: float = 0.0, high: float = 1.0, size: int | tuple[int, ...] | None = None) float | ndarray¶
Mengambil sampel dari distribusi seragam pada interval setengah-terbuka
[low, high).- Parameter:
low -- batas bawah (inklusif) dari distribusi.
high -- batas atas (eksklusif) dari distribusi.
size -- bentuk keluaran. Jika berupa tuple, array dengan bentuk tersebut dikembalikan. Jika
None(nilai default), sebuah Pythonfloattunggal yang diambil dari[0.0, 1.0)dikembalikan (batas low/high diabaikan pada kasus skalar).
- Kembali:
berupa Python
floatataunumpy.ndarraybertipe float dengan bentuk yang diminta.- Pengecualian:
ValueError -- jika bentuk yang diminta melebihi
ULAB_MAX_DIMS.TypeError -- jika size bukan
Nonemaupun tuple.
Dengan argumen default yang identik,
uniform()menghasilkan urutan yang sama denganrandom().