NumPy: Генерация случайного числа от 0 до 1

Генерация случайного числа от 0 до 1 с помощью np.random.rand() в NumPy

NumPy — это мощная библиотека Python, используемая для численных расчетов. Одной из ее ключевых возможностей является генерация случайных чисел. В этой статье мы подробно рассмотрим функцию np.random.rand(), которая генерирует случайные числа в диапазоне от 0 до 1.

Синтаксис

np.random.rand(d0, d1, ..., dn)

где d0, d1, ..., dn — размерности результирующего массива.

Примеры

Разберём генерацию массивов с помощью функции np.random.rand() более детально.

Генерация одномерного массива

import numpy as np

arr1 = np.random.rand(5)
print(arr1)  # [0.31234904 0.97092861 0.61889652 0.82921095 0.76484775]

Генерация двумерного массива

arr2 = np.random.rand(3, 4)
print(arr2)

# [[0.33193809 0.6720552  0.5434841  0.12891265]
#  [0.66986539 0.8790117  0.88892384 0.51941347]
#  [0.24557377 0.39850945 0.98316133 0.36552715]]

Генерация трехмерного массива

arr3 = np.random.rand(2, 3, 4)
print(arr3)

#[[[0.45433903 0.31216897 0.90741828 0.71001432]
#  [0.11918107 0.71487689 0.46114064 0.79526124]
#  [0.8240794  0.42426158 0.7774631  0.95529118]]
#
# [[0.75447192 0.66993236 0.65216405 0.83692791]
#  [0.62493793 0.79708135 0.6317364  0.92276093]
#  [0.72595552 0.62899923 0.92675854 0.49191306]]]

Генерация четырёхмерного массива

arr4 = np.random.rand(2, 2, 3, 4)
print(arr4)

#[[[[0.03358529 0.98428623 0.68021185 0.08389134]
#   [0.72315249 0.83165045 0.99585299 0.37075007]
#   [0.74506665 0.26053862 0.7554067  0.31957661]]
#
#  [[0.63864011 0.48820968 0.73601239 0.62761774]
#   [0.79655248 0.27092068 0.20429234 0.04879984]
#   [0.36908127 0.10886652 0.70082719 0.55613279]]]
#
#
# [[[0.56032464 0.23209741 0.27243854 0.50247617]
#   [0.07994891 0.20460308 0.85284606 0.45523333]
#   [0.41975719 0.61527017 0.88977731 0.32075298]]
#
#  [[0.25414389 0.66512488 0.45522804 0.15459848]
#   [0.86480761 0.71781608 0.37534735 0.26342726]
#   [0.84388394 0.37863536 0.01706272 0.58521216]]]]

Использование в математических операциях

Например, создадим массив чисел, которые находятся в диапазоне от 0 до 10:

arr5 = 10 * np.random.rand(5)
print(arr5)  # Например: [5.23198342 3.04565808 8.78877947 2.77779804 4.12768538]

Создание матрицы с рандомными значениями

matrix = np.random.rand(4, 4)
print(matrix)

# [[0.24822691 0.62094696 0.50259624 0.68261365]
#  [0.14635918 0.3793927  0.1925333  0.94904719]
#  [0.03292372 0.39737189 0.1130661  0.94053097]
#  [0.4920125  0.08757906 0.14854702 0.94224325]]

Создание случайных векторов

Допустим, вы хотите создать два вектора для последующего вычисления их скалярного произведения:

vec1 = np.random.rand(3)
vec2 = np.random.rand(3)
dot_product = np.dot(vec1, vec2)
print(dot_product)

С помощью функции np.random.rand() вы можете создавать массивы различной формы и размерности, что очень удобно при проведении различных экспериментов, моделирования или при работе с данными.

Заключение

Функция np.random.rand() из библиотеки NumPy представляет собой мощный инструмент для генерации равномерно распределенных случайных чисел в диапазоне от 0 до 1. Благодаря её гибкости и возможности создания массивов различной размерности, этот метод находит широкое применение в различных областях, от научных исследований до обработки данных и машинного обучения.

При помощи np.random.rand() можно быстро и просто создавать одномерные, двумерные и многомерные массивы, что делает её идеальным выбором для экспериментов, симуляций или любых других задач, где требуется случайное значение.

Содержание: