Generate random variables with specified 2nd moment ?

4 Ansichten (letzte 30 Tage)
Furqan Haider
Furqan Haider am 11 Jun. 2014
Bearbeitet: Roger Wohlwend am 11 Jun. 2014
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.

Antworten (1)

Roger Wohlwend
Roger Wohlwend am 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 Kommentare
Furqan Haider
Furqan Haider am 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 am 11 Jun. 2014
Bearbeitet: Roger Wohlwend am 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)

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Random Number Generation finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by