Сгенерируйте пять случайных чисел из нормального распределения, используя NumPy
При изучении статистики и анализа данных широко используется нормальное распределение или распределение Гаусса. Это колоколообразная кривая, характеризующая вероятность и часто используемая для моделирования явлений реального мира.
Мы используем модуль случайных чисел, доступный в библиотеке Python Numpy, для генерации случайных чисел из нормального распределения. Он также позволяет пользователям генерировать случайные числа из нормального распределения с указанным средним значением и стандартным отклонением.
Синтаксис
numpy.random.normal(loc=0.0, scale=1.0, size=None)
Параметры
loc (float или array_like): это среднее значение или центр распределения. Значение по умолчанию — 0,0 и представляет собой пик полученной таким образом колоколообразной кривой.
масштаб (float или array_like): это стандартное отклонение распределения. Значение по умолчанию — 1,0, и оно контролирует ширину колоколообразной кривой.
размер (целое число или кортеж целых чисел): возвращает форму вывода и определяет количество генерируемых случайных чисел.
Если предоставлен кортеж целых чисел, функция генерирует многомерный массив случайных чисел указанной формы. Его значение по умолчанию отмечено как Нет.
Пример 1
В следующем примере показано, как генерировать случайные числа со средним значением и стандартным отклонением по умолчанию.
Алгоритм
Импортируйте библиотеку numpy.
Используйте функцию random.normal без явных параметров среднего и стандартного отклонения.
Укажите параметр размера как 5, чтобы сгенерировать пять случайных чисел из нормального распределения.
Сохраните сгенерированные случайные числа в переменной random_numbers.
Распечатайте переменную random_numbers.
import numpy as nmp
# To generate five random numbers from the normal distribution
random_numbers = nmp.random.normal(size=5)
# Print the random numbers
print("The Random Generated Numbers Are:", random_numbers)
Выход
The Random Generated Numbers Are:
[-0.66362634 0.60882755 0.62147686 -0.0246644 0.17017737]
Пример 2
Следующий код иллюстрирует генерацию десяти случайных чисел из нормального распределения с настраиваемым средним значением и стандартным отклонением с использованием NumPy.
import numpy as np
# Setting the custom mean and standard deviation
mean = 10 # Mean of the distribution
std_dev = 2 # Standard deviation of the distribution
# Generate the random numbers
random_numbers = np.random.normal(loc=mean, scale=std_dev, size=10)
# Print the generated random numbers
print("Here Are The 10 Generated Random Numbers:", random_numbers)
Выход
Here Are The 10 Generated Random Numbers:
[10.81862559 7.28414504 8.61239397 8.98294608 7.
50709111 7.90727366 9.21915208 10.43019622 12.493977 11.57399687]
Пример 3
В этом примере мы сгенерируем двумерный массив случайных чисел 4 на 5 из нормального распределения, используя NumPy с определяемым пользователем средним значением и стандартным отклонением.
Алгоритм
Импортируйте библиотеку numpy как np.
-
Установите желаемые значения среднего и std_dev для нормального распределения.
Используйте функцию numpy.random.normal и укажите значения среднего значения и strd_dev в качестве аргументов.
Укажите параметр размера в виде кортежа (4, 5), чтобы сгенерировать двумерный массив случайных чисел с 4 строками и 5 столбцами из нормального распределения.
Сохраните сгенерированные случайные числа в переменной random_numbers.
Распечатайте переменную random_numbers.
import numpy as nmpy
# Set the mean and standard deviation
mean = 0
strd_dev = 1
# Generate a 2D array of random numbers from the normal distribution
random_numbers = nmpy.random.normal(loc=mean, scale=strd_dev, size=(4, 5))
# Print the generated random numbers
print("The two-dimensional array of random numbers:")
print(random_numbers)
Выход
The two-dimensional array of random numbers:
[[-1.18743672 -1.32939008 0.37248625 0.31413006 -0.83207142]
[-1.26353284 0.4993038 -1.02139944 -0.66408169 -0.40570098]
[-1.36817096 -0.05267991 -0.33518531 -0.0784531 -0.34882078]
[ 1.3996869 0.53987652 -2.59857656 -1.2062663 -1.83573899]]
Заключение
Возможность настройки среднего и стандартного отклонения нормального распределения позволяет использовать широкий спектр вариантов использования, таких как статистическое моделирование, анализ данных, моделирование Монте-Карло, включающее случайную выборку для оценки и анализа сложных систем и финансового моделирования.
В финансовом и инвестиционном анализе нормальное распределение часто используется для моделирования доходности активов. Это также позволяет моделировать различные инвестиционные сценарии и оценивать риски.