why when I use mvrnd to generate random vectors from a multivariate normal I always get small numbers in absolute value ?

2 Ansichten (letzte 30 Tage)
Hi, why when I use mvrnd to generate random vectors from a multivariate normal I always get small numbers in absolute value (not larger than 4 or 5)? E.g.
mu=[0 0];
sigma=[1 0.4; 0.4 1];
r=10000; %number of simulated unobservables
epsilon=mvnrnd(mu,sigma,r);
Thanks

Akzeptierte Antwort

Vaclav Rimal
Vaclav Rimal am 11 Dez. 2013
The width of the distribution is ruled by the diagonal elements of sigma. If you want larger absolute values, try scaling sigma, e.g.
sigma = [10 4; 4 10];
  2 Kommentare
MRC
MRC am 11 Dez. 2013
Thanks, but I would like to keep the variances equal to 1 and then the covariances should be between -1 and 1.
Vaclav Rimal
Vaclav Rimal am 11 Dez. 2013
Bearbeitet: Vaclav Rimal am 11 Dez. 2013
But when the variances are v=1.0, the standard deviations of both vectors are supposed to be sqrt(v)=1.0, so there is only a little probability that a value exceeds the number 5 you mentioned. (99.7 % should have absolute values less than 3*sqrt(v), which you can test by sum(abs(epsilon)<3).) You simply cannot have v=1.0 and large numbers in the result.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

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