Як використовувати еквівалент 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

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *