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

2 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

Vaclav Rimal
Vaclav Rimal il 11 Dic 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 Commenti
MRC
MRC il 11 Dic 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 il 11 Dic 2013
Modificato: Vaclav Rimal il 11 Dic 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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Random Number Generation in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by