问题描述
我需要使用randn
函数生成均值为0且方差为1的n
个数字的高斯随机样本.
I need to generate a Gaussian random sample of n
numbers, with mean 0 and variance 1, using the randn
function.
通常,我如何使用randn
函数生成具有n
个数字,均值mu
和方差v
的高斯随机样本X
?
In general, how would I generate a Gaussian random sample X
of n
numbers, with mean mu
and variance v
, using the randn
function?
推荐答案
A standard正态分布 已经具有均值0和方差1.
A standard normal distribution already has mean 0 and variance 1.
如果您要更改均值,只需转换"分布即可,即,将平均值添加到每个生成的数字中.同样,如果您要更改方差,只需缩放"分布,即将所有数字乘以sqrt(v)
.例如,
If you want to change the mean, just "translate" the distribution, i.e., add your mean value to each generated number. Similarly, if you want to change the variance, just "scale" the distribution, i.e., multiply all your numbers by sqrt(v)
. For example,
v = 1.5; % variance
sigma = sqrt(v); % standard deviation
mu = 2; % mean
n = 1000
X = sigma .* randn(n, 1) + mu;
stats = [mean(X) std(X) var(X)]
请参阅以下文章:
了解更多信息.
这篇关于如何从具有特定均值和方差的正态分布中生成随机数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!