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

Satunnaiset Taulukot

Pyyhkäise näyttääksesi valikon

Usein tarvitaan satunnaisluku tai satunnaislukujen taulukko. Onneksi NumPy-kirjastossa on tähän tarkoitukseen erityinen 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 argumentteja 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)
Note
Huomio

rand()-funktion ulottuvuudet tulee määrittää erillisinä kokonaislukuparametreina, ei kokonaislukujen tuplena. 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 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 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)
Note
Huomautus

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

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

  1. Luo 1-ulotteinen satunnaislukutaulukko liukuluvuista tasaisella jakaumalla välillä [0,1)[0, 1), jossa on 4 alkiota muuttujalle random_floats_array.
  2. Luo 2-ulotteinen satunnaislukutaulukko liukuluvuista tasaisella jakaumalla välillä [0,1)[0, 1), jonka muoto on 3x2 muuttujalle random_floats_matrix.
  3. Käytä oikeaa funktiota luodaksesi 2-ulotteisen satunnaisten kokonaislukujen taulukon muuttujalle random_integers_matrix.
  4. Aseta väli 10 ensimmäisiksi argumenteiksi.
  5. Aseta 21-taulukon muoto kolmannella avainsana-argumentilla random_integers_matrix ja muodoksi 3x2.

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