Clear Filters
Clear Filters

Generate random variables with specified 2nd moment ?

1 view (last 30 days)
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.

Answers (1)

Roger Wohlwend
Roger Wohlwend on 11 Jun 2014
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 Comments
Furqan Haider
Furqan Haider on 11 Jun 2014
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 on 11 Jun 2014
Edited: Roger Wohlwend on 11 Jun 2014
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)

Sign in to comment.

Categories

Find more on Time Series in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!