Satunnaiset Taulukot
Usein tarvitsemme satunnaislukua tai satunnaislukujen taulukkoa. Onneksi NumPy:lla on random
-niminen moduuli juuri tätä tarkoitusta varten.
Kaksi yleisimmin käytettyä random
-moduulin funktiota ovat:
rand()
;randint()
.
rand()
numpy.random.rand()
-funktiota käytetään joko satunnaisen float
-luvun tai satunnaisten float-lukujen taulukon luomiseen yhtenäisestä jakaumasta välillä [0, 1).
Huomio
Neliö- tai kaarisulkeet [ tai ] intervallimerkinnässä tarkoittavat, että arvo sisältyy, kun taas kaarisulkeet ( tai ) tarkoittavat, että arvo ei sisälly. Esimerkiksi [0, 1) tarkoittaa, että väli sisältää 0 mutta ei 1. Älä sekoita tätä matemaattista merkintää koodissa käytettyihin sulkeisiin — niillä on eri tarkoitus.
Ainoat mahdolliset argumentit ovat taulukon ulottuvuudet. Jos argumenttia ei anneta, rand()
luo satunnaisen float
-luvun (skalaari).
import numpy as np # Generating a random number random_number = np.random.rand() print(random_number) # Generating a random 1D array with 5 elements random_array = np.random.rand(5) print(random_array) # Generating a random 2D array (matrix) of shape 4x3 random_matrix = np.random.rand(4, 3) print(random_matrix)
Huom
Ulottuvuudet
rand()
-funktiossa tulisi määritellä erillisinä kokonaislukuparametreina, ei kokonaislukujen tuplena. Esimerkiksirand(4, 3)
on oikein, kun taasrand((4, 3))
on väärin.
randint()
numpy.random.randint
-funktiota käytetään joko satunnaisen kokonaisluvun tai satunnaisten kokonaislukujen taulukon luomiseen
diskreetistä tasajakaumasta määritellyllä välillä.
Sen kolme tärkeintä parametria ovat low
(ainoa pakollinen parametri), high
ja size
. Väli on [low, high)
(alkaen low
mukaan lukien ja päättyen high
pois lukien). Kuitenkin, jos high
ei ole määritelty, väli on [0, low)
.
import numpy as np # Generating a random integer from 0 to 3 exclusive random_integer = np.random.randint(3) print(random_integer) # Generating a 1D array of random integers in [0, 5) with 4 elements random_int_array = np.random.randint(5, size=4) print(random_int_array) # Generating a 1D array of random integers in [2, 5) with 4 elements random_int_array_2 = np.random.randint(2, 5, size=4) print(random_int_array_2) # Generating a random 2D array of random integers in [1, 6) of shape 4x2 random_int_matrix = np.random.randint(1, 6, size=(4, 2)) print(random_int_matrix)
Huom
Toisin kuin
rand()
, määritämme taulukon ulottuvuudet yhden parametrinsize
kautta, antamalla joko kokonaisluvun tai kokonaislukujen tuplen.
Swipe to start coding
- Luo 1D-taulukko satunnaisista liukuluvuista tasaisesta jakaumasta välillä [0, 1) 4 elementillä
random_floats_array
. - Luo 2D-taulukko satunnaisista liukuluvuista tasaisesta jakaumasta muodolla 3x2
random_floats_matrix
. - Käytä oikeaa funktiota luodaksesi 2D-taulukko satunnaisista kokonaisluvuista
random_integers_matrix
. - Aseta väliksi [10, 21) (väliltä
10
21
:een poissuljettuna) määrittämällä funktion kaksi ensimmäistä argumenttia. - Aseta
random_integers_matrix
-taulukon muodoksi 3x2 määrittämällä funktion kolmas avainsana-argumentti.
Ratkaisu
Kiitos palautteestasi!