Создание массива с параметром измерения, среднего значения и дисперсии в качестве параметров? - PullRequest
0 голосов
/ 10 июня 2018

Как мне создать простой массив с параметрами, средними значениями и дисперсией в качестве параметров?Я вижу, что есть функция numpy.random.randn, которая позволяет пользователю указывать размеры, но эта функция предполагает среднее значение 0 и дисперсию 1.

Я в порядке со средним значением 0, но я хочу бытьвозможность указать отклонение каждый раз, когда я создаю новый массив NumPy.

Спасибо за вашу помощь!

Ответы [ 2 ]

0 голосов
/ 10 июня 2018

Из справочной документации (numpy.random.randn):

Для случайных выборок из N(\mu, \sigma^2), когда mu - среднее значение, а sigma - дисперсия (см. Нормальное распределение), используйте:

sigma * np.random.randn(d0, d1, ..., dn) + mu

Когда (d0, d1, ..., dn) - это форма сгенерированного массива.

0 голосов
/ 10 июня 2018

Возможно, вы ищете numpy.random.normal.Например:

import numpy as np

arr = np.random.normal(loc=1, scale=0.50, size=(500, 500))

print(arr.mean())  # 0.9995707343806642
print(arr.std())   # 0.5010967322495354

Здесь loc представляет среднее значение и scale стандартное отклонение, то есть квадратный корень дисперсии.

Конечно, вы рисуете образцы из дистрибутива, поэтому у вас не будет среднего значения 1,0 или стандартного отклонения 0,50, если у вас нет очень большого массива.

...