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

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

 채택된 답변

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

Thanks, but I would like to keep the variances equal to 1 and then the covariances should be between -1 and 1.
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.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Random Number Generation에 대해 자세히 알아보기

질문:

MRC
2013년 12월 11일

편집:

2013년 12월 11일

Community Treasure Hunt

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

Start Hunting!

Translated by