Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Satunnaiset Taulukot | Numpy Basics
Numpy Perusteet
Osio 1. Luku 7
single

single

bookSatunnaiset Taulukot

Pyyhkäise näyttääksesi valikon

Usein tarvitaan satunnaisluku tai satunnaislukuja sisältävä taulukko. Onneksi NumPy-kirjastossa on tähän tarkoitukseen oma random-moduuli.

random-moduulin kaksi yleisimmin käytettyä funktiota ovat:

  • rand();
  • randint().

rand()

numpy.random.rand()-funktiolla voidaan luoda satunnainen float-luku tai taulukko satunnaisia liukulukuja tasaisesta jakaumasta välillä [0,1)[0, 1).

Note
Huomio

Neliömäiset sulkeet [[ tai ]] intervallimerkinnässä tarkoittavat, että arvo sisältyy väliin, kun taas kaarisulkeet (( tai )) tarkoittavat, että arvo ei sisälly väliin. Esimerkiksi [0,1)[0, 1) tarkoittaa, että väli sisältää 0 mutta ei 1:tä. Ä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() tuottaa satunnaisen float-tyyppisen luvun (skalaarin).

12345678910
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)
copy
Note
Huomio

rand()-funktion ulottuvuudet tulee määrittää erillisinä kokonaislukuparametreina, ei kokonaislukutuplena. Esimerkiksi rand(4, 3) on oikein, kun taas rand((4, 3)) on väärin.

randint()

numpy.random.randint-funktiota käytetään satunnaisen kokonaisluvun tai satunnaisista kokonaisluvuista koostuvan taulukon luomiseen diskreetistä tasajakaumasta määritellyllä välillä.

Sen kolme tärkeintä parametria ovat low (vaadittu parametri), high ja size. Väli on [low, high) (alkaen low mukaan lukien ja päättyen ennen high). Jos high-parametria ei määritellä, väli on [0, low).

12345678910111213
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)
copy
Note
Huomio

Toisin kuin rand(), taulukon mitat määritellään yhdellä parametrilla size, johon annetaan joko kokonaisluku tai kokonaislukujen tuple.

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

  1. Luo 1-ulotteinen satunnaislukutaulukko liukulukuarvoilla tasaisesta jakaumasta välillä [0,1)[0, 1), jossa on 4 alkiota muuttujalle random_floats_array.
  2. Luo 2-ulotteinen satunnaislukutaulukko liukulukuarvoilla tasaisesta jakaumasta välillä [0,1)[0, 1) muodossa 3x2 muuttujalle random_floats_matrix.
  3. Käytä oikeaa funktiota luodaksesi 2-ulotteisen satunnaislukutaulukon kokonaisluvuilla muuttujalle random_integers_matrix.
  4. Aseta väliksi [10,21)[10, 21) (eli 1021, pois lukien 21) määrittämällä funktion kaksi ensimmäistä argumenttia.
  5. Aseta random_integers_matrix-taulukon muodoksi 3x2 määrittämällä kolmas avainsana-argumentti funktiolle.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 7
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

some-alt