Случайные числа в NumPy
Что такое случайное число?
Случайное число НЕ означает каждый раз другое число. Случайное означает то, что нельзя предсказать логически.
Псевдослучайный и Истинный случайный.
Компьютеры работают по программам, а программы представляют собой определенный набор инструкций. Это означает, что должен быть какой-то алгоритм для генерации случайного числа.
Если есть программа для генерации случайных чисел, их можно предсказать, поэтому они не являются действительно случайными.
Случайные числа, сгенерированные с помощью алгоритма генерации, называются псевдослучайными .
Можем ли мы получить действительно случайные числа?
да. Чтобы сгенерировать действительно случайное число на наших компьютерах, нам нужно получить случайные данные из какого-то внешнего источника. Этим внешним источником обычно являются наши нажатия клавиш, движения мыши, данные в сети и т. д.
Нам не нужны действительно случайные числа, если только это не связано с безопасностью (например, ключи шифрования) или в основе приложения лежит случайность (например, колеса цифровой рулетки).
В этом уроке мы будем использовать псевдослучайные числа.
Сгенерировать случайное число
NumPy предлагает random
модуль для работы со случайными числами.
Пример
Сгенерируйте случайное целое число от 0 до 100:
from numpy import random
x = random.randint(100)
print(x)
Генерация случайного числа с плавающей запятой
Метод модуля random rand()
возвращает случайное число с плавающей точкой от 0 до 1.
Пример
Создайте случайное число с плавающей запятой от 0 до 1:
from numpy import random
x = random.rand()
print(x)
Создать случайный массив
В NumPy мы работаем с массивами, и вы можете использовать два метода из приведенных выше примеров для создания случайных массивов.
Целые числа
Метод randint()
принимает size
параметр, в котором вы можете указать форму массива.
Пример
Создайте одномерный массив, содержащий 5 случайных целых чисел от 0 до 100:
from numpy import random
x=random.randint(100, size=(5))
print(x)
Пример
Создайте двумерный массив с 3 строками, каждая строка содержит 5 случайных целых чисел от 0 до 100:
from numpy import random
x = random.randint(100, size=(3, 5))
print(x)
Поплавки
Метод rand()
также позволяет указать форму массива.
Пример
Создайте одномерный массив, содержащий 5 случайных чисел с плавающей запятой:
from numpy import random
x = random.rand(5)
print(x)
Пример
Создайте двумерный массив с 3 строками, каждая строка содержит 5 случайных чисел:
from numpy import random
x = random.rand(3, 5)
print(x)
Сгенерировать случайное число из массива
Метод choice()
позволяет генерировать случайное значение на основе массива значений.
Метод choice()
принимает массив в качестве параметра и случайным образом возвращает одно из значений.
Пример
Возвращает одно из значений массива:
from numpy import random
x = random.choice([3, 5, 7, 9])
print(x)
Метод choice()
также позволяет вам возвращать массив значений.
Добавьте size
параметр, чтобы указать форму массива.
Пример
Создайте двумерный массив, состоящий из значений параметра массива (3, 5, 7 и 9):
from numpy import random
x = random.choice([3, 5, 7, 9], size=(3, 5))
print(x)