Tilfældige Arrays
Det er ofte tilfældet, at vi har brug for at generere et tilfældigt tal eller en matrix af tilfældige tal. Heldigvis har NumPy et modul ved navn random
specifikt til dette formål.
De to mest almindeligt anvendte funktioner i random
-modulet er:
rand()
;randint()
.
rand()
Funktionen numpy.random.rand()
bruges til at generere enten et tilfældigt float
-tal eller en matrix af tilfældige floats fra en uniform fordeling over [0, 1).
Bemærk
Kantede parenteser [ eller ] i intervalnotation angiver, at værdien er inkluderet, mens parenteser ( eller ) angiver, at værdien er ekskluderet. For eksempel betyder [0, 1), at intervallet inkluderer 0, men ikke 1. Forveksl ikke denne matematiske notation med parenteser brugt i kode — de tjener forskellige formål.
Dens eneste mulige argumenter er dimensionerne af matrixen. Hvis der ikke gives noget argument, genererer rand()
et tilfældigt float
-tal (skalar).
12345678910import 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)
Bemærk
Dimensioner i
rand()
-funktionen skal specificeres som separate heltalsparametre, ikke som en tuple af heltal. For eksempel,rand(4, 3)
er korrekt, mensrand((4, 3))
er forkert.
randint()
Funktionen numpy.random.randint
bruges til at generere enten et tilfældigt heltal eller en array af tilfældige heltal fra en
diskret uniform fordeling inden for et specificeret interval.
Dens tre vigtigste parametre er low
(den eneste påkrævede parameter), high
og size
. Intervallet er [low, high)
(fra low
inklusiv til high
eksklusiv). Men hvis high
ikke er specificeret, så er intervallet [0, low)
.
12345678910111213import 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)
Bemærk
I modsætning til
rand()
, specificerer vi dimensionerne af arrayet via en enkelt parametersize
, hvor vi angiver enten et heltal eller en tuple af heltal.
Swipe to start coding
- Opret et 1D array af tilfældige floats fra en ensartet fordeling i [0, 1) med 4 elementer til
random_floats_array
. - Opret et 2D array af tilfældige floats fra en ensartet fordeling i [0, 1) med en form på 3x2 til
random_floats_matrix
. - Brug den korrekte funktion til at oprette et 2D array af tilfældige heltal til
random_integers_matrix
. - Indstil intervallet til [10, 21) (fra
10
til21
eksklusiv) ved at specificere de første to argumenter af funktionen. - Indstil formen på
random_integers_matrix
til 3x2 ved at specificere det tredje nøgleordsargument af funktionen.
Løsning
Tak for dine kommentarer!
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat