Liczby losowe w NumPy
Co to jest liczba losowa?
Liczba losowa NIE oznacza za każdym razem innej liczby. Losowo oznacza coś, czego nie da się logicznie przewidzieć.
Pseudo losowe i prawdziwe losowe.
Komputery działają na programach, a programy są ostatecznym zestawem instrukcji. Oznacza to, że musi istnieć jakiś algorytm do generowania liczby losowej.
Jeśli istnieje program do generowania liczb losowych, można go przewidzieć, a zatem nie jest to naprawdę losowy.
Liczby losowe generowane przez algorytm generowania są nazywane pseudolosowymi .
Czy możemy tworzyć naprawdę losowe liczby?
Tak. Aby wygenerować naprawdę losową liczbę na naszych komputerach, musimy uzyskać losowe dane z jakiegoś zewnętrznego źródła. To zewnętrzne źródło to zazwyczaj nasze naciśnięcia klawiszy, ruchy myszy, dane w sieci itp.
Nie potrzebujemy naprawdę losowych liczb, chyba że jest to związane z bezpieczeństwem (np. klucze szyfrujące) lub podstawą zastosowania jest losowość (np. Cyfrowe koła ruletki).
W tym samouczku będziemy używać liczb pseudolosowych.
Wygeneruj losową liczbę
NumPy oferuje random
moduł do pracy z liczbami losowymi.
Przykład
Wygeneruj losową liczbę całkowitą od 0 do 100:
from numpy import random
x = random.randint(100)
print(x)
Generuj losową liczbę zmiennoprzecinkową
Metoda modułu random rand()
zwraca losową liczbę zmiennoprzecinkową z zakresu od 0 do 1.
Przykład
Wygeneruj losowy zmiennoprzecinkowy od 0 do 1:
from numpy import random
x = random.rand()
print(x)
Generuj tablicę losową
W NumPy pracujemy z tablicami i możesz użyć dwóch metod z powyższych przykładów do tworzenia tablic losowych.
Liczby całkowite
Metoda randint()
przyjmuje size
parametr, w którym można określić kształt tablicy.
Przykład
Wygeneruj tablicę 1-D zawierającą 5 losowych liczb całkowitych od 0 do 100:
from numpy import random
x=random.randint(100, size=(5))
print(x)
Przykład
Wygeneruj tablicę 2-D z 3 wierszami, z których każdy zawiera 5 losowych liczb całkowitych od 0 do 100:
from numpy import random
x = random.randint(100, size=(3, 5))
print(x)
Pływa
Metoda rand()
pozwala również określić kształt tablicy.
Przykład
Wygeneruj tablicę 1-D zawierającą 5 losowych elementów zmiennoprzecinkowych:
from numpy import random
x = random.rand(5)
print(x)
Przykład
Wygeneruj tablicę 2D z 3 wierszami, z których każdy zawiera 5 liczb losowych:
from numpy import random
x = random.rand(3, 5)
print(x)
Generuj losową liczbę z tablicy
Metoda choice()
pozwala na wygenerowanie losowej wartości na podstawie tablicy wartości.
Metoda choice()
przyjmuje tablicę jako parametr i losowo zwraca jedną z wartości.
Przykład
Zwróć jedną z wartości w tablicy:
from numpy import random
x = random.choice([3, 5, 7, 9])
print(x)
Metoda choice()
pozwala również zwrócić tablicę wartości.
Dodaj size
parametr, aby określić kształt szyku.
Przykład
Wygeneruj tablicę 2-D, która składa się z wartości w parametrze tablicy (3, 5, 7 i 9):
from numpy import random
x = random.choice([3, 5, 7, 9], size=(3, 5))
print(x)