Generate random variables with specified 2nd moment ?

1 次查看(过去 30 天)
Hellow all,
I am using randn() to generate random variables. I know how to generate normal random variables with specific mean and variance. I am facing problem in generating these random variables with specific 2nd moment.
If random variables are:
x = randn(1,1000);
then 2nd moment is
momemt_2 = mean(x.^2);
Kindly help.

回答(1 个)

Roger Wohlwend
Roger Wohlwend 2014-6-11
The second moment is the same as the variance of the random numbers!
>> x = randn(1,1000);
>> var(x)
ans =
0.9193
>> mean(x.^2)
ans =
0.9190
Your formula for the second moment assumes, however, that the mean of the time series x is zero.
  2 个评论
Furqan Haider
Furqan Haider 2014-6-11
I am sorry to accept your answer because its only applicable for random numbers with mean 'zero'. formula for variance is
variance = mean(x.^2) - (mean(x))^2;
whereas,
moment_2 = mean(x.^2);
Let me explain, in my case the mean is not zero.
Kindly help.
Roger Wohlwend
Roger Wohlwend 2014-6-11
编辑:Roger Wohlwend 2014-6-11
You use the wrong formula for the second moment. Consult the internet. The second moment is the variance. Your formula just implies a mean of zero. If the mean is not zero you have to adjust the formula.
moment_2 = mean((x - mean(x)).^2)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Time Series 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by