Як використовувати еквівалент rnorm() у python
У мові програмування R ми можемо використовувати функцію rnorm() для генерації вектора випадкових значень, який відповідає нормальному розподілу з певним середнім і стандартним відхиленням.
Наприклад, у наведеному нижче коді показано, як використовувати rnorm() для створення вектора з 8 випадкових значень, який відповідає нормальному розподілу із середнім значенням 5 і стандартним відхиленням 2:
#make this example reproducible set. seeds (1) #generate vector of 8 values that follows normal distribution with mean=5 and sd=2 rnorm(n=8, mean=5, sd=2) [1] 3.747092 5.367287 3.328743 8.190562 5.659016 3.359063 5.974858 6.476649
Еквівалентом функції rnorm() у Python є функція np.random.normal() , яка використовує такий базовий синтаксис:
np.random.normal(loc=0, scale=1, size=None)
золото:
- loc : Середнє значення розподілу
- масштаб : стандартне відхилення розподілу
- size : розмір вибірки
У наступному прикладі показано, як використовувати цю функцію на практиці.
Приклад: використання еквівалента rnorm() у Python
У наведеному нижче коді показано, як використовувати функцію np.random.normal() для створення масиву випадкових значень, які відповідають нормальному розподілу з певним середнім і стандартним відхиленням.
import numpy as np #make this example reproducible n.p. random . seeds (1) #generate array of 8 values that follow normal distribution with mean=5 and sd=2 n.p. random . normal (loc=5, scale=2, size=8) array([8.24869073, 3.77648717, 3.9436565, 2.85406276, 6.73081526, 0.39692261, 8.48962353, 3.4775862 ])
Результатом є масив NumPy, що містить 8 значень, згенерованих із нормального розподілу із середнім значенням 5 і стандартним відхиленням 2.
Ви також можете створити гістограму за допомогою Matplotlib для візуалізації нормального розподілу, згенерованого функцією np.random.normal() :
import numpy as np import matplotlib. pyplot as plt #make this example reproducible n.p. random . seeds (1) #generate array of 200 values that follows normal distribution with mean=5 and sd=2 data = np. random . normal (loc=5, scale=2, size=200) #create histogram to visualize distribution of values plt. hist (data, bins=30, edgecolor=' black ')
Ми бачимо, що розподіл значень має приблизно дзвоноподібну форму із середнім значенням 5 і стандартним відхиленням 2.
Примітка . Ви можете знайти повну документацію для функції np.random.normal() тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в Python:
Як обчислити та побудувати нормальний CDF у Python
Як побудувати нормальний розподіл у Python
Як перевірити нормальність у Python