Slumpmässiga tal i NumPy
- Föregående Sida NumPy Array filtrering
- Nästa Sida NumPy ufuncs
Vad är slumpmässiga tal?
Slumpmässiga tal innebär inte att varje gång är olika nummer. Slumpmässigt innebär att något som inte kan förutses logiskt.
Pseudorandom och verklig slumpmässighet
Datorer arbetar med program, och program är en auktoritetssamling av instruktioner. Detta innebär att det måste finnas en algoritm för att generera slumpmässiga tal.
Om det finns ett program för att generera slumpmässiga tal kan det förutsägas, så är det inte verkligt slumpmässigt.
Slumpmässiga tal som genereras genom algoritmer kallas pseudorandoma tal.
Kan vi generera verkliga slumpmässiga tal?
Ja. För att generera en verklig slumpmässig tal på vår dator behöver vi data från en extern källa. En extern källa är vanligtvis våra tangenttryckningar, musrörelser, nätverksdata etc.
Vi behöver inte verkliga slumpmässiga tal, om inte det gäller säkerhet (t.ex. krypteringsnycklar) eller att grunden är slumpmässighet (t.ex. digitala roulettehjul).
I denna tutorial kommer vi att använda pseudorandoma tal.
Generera slumpmässiga tal
NumPy erbjuder random-modulen för att hantera slumpmässiga tal.
Exempel
Generera ett heltal mellan 0 och 100:
from numpy import random x = random.randint(100) print(x)
Generera slumpmässig flyttal
random-modulen rand()
Metoden returnerar en slumpmässig flyttal mellan 0 och 1.
Exempel
Generera en slumpmässig flyttal mellan 0 och 100:
from numpy import random x = random.rand() print(x)
Generera slumpmässig array
I NumPy kan vi använda de två metoder som nämndes i föregående exempel för att skapa en slumpmässig array.
heltal
randint()
Metoden accepterar size
参数, där du kan specificera arrayens form.
Exempel
Generera en 1-D array som innehåller 5 slumpmässiga heltal mellan 0 och 100:
from numpy import random x=random.randint(100, size=(5)) print(x)
Exempel
Generera en 2-D array med 3 rader, där varje rad innehåller 5 slumpmässiga heltal mellan 0 och 100:
from numpy import random x = random.randint(100, size=(3, 5)) print(x)
Flyttal
rand()
Metoden tillåter också att du specificerar formen på arrayen.
Exempel
Generera en 1-D array som innehåller 5 slumpmässiga flyttalsvärden:
from numpy import random x = random.rand(5) print(x)
Exempel
Generera en 2-D array med 3 rader, där varje rad innehåller 5 slumpmässiga tal:
from numpy import random x = random.rand(3, 5) print(x)
Generera slumpmässiga tal från arrayen
choice()
Metoden låter dig generera slumpmässiga värden baserat på en värdearray.
choice()
Metoden tar arrayen som parameter och returnerar en slumpmässig värde.
Exempel
Returnera ett värde från arrayen:
from numpy import random x = random.choice([3, 5, 7, 9]) print(x)
choice()
Metoden tillåter också att du returnerar en värdearray.
Lägg till en size
Parametrar specificerar formen på den angivna arrayen.
Exempel
Generera en tvådimensionell array bestående av värden från arrayparametrar (3, 5, 7 och 9):
from numpy import random x = random.choice([3, 5, 7, 9], size=(3, 5)) print(x)
- Föregående Sida NumPy Array filtrering
- Nästa Sida NumPy ufuncs