Generate random errors for data with specific covariance matrices

Hello
I have simulated 450 data for a linear regression model with 5 independent variables and a dependent variable (y=a*x1+b*x2+c*x3+d*x4+e*x5+f). Each of these data has specific weights(Wy, Wx1, Wx2, Wx3, Wx4, Wx5) . Now I want to add a random error with a mean of zero and variance (for example Sigma*inv(W) ) of each variables to this data. How can this be done?

Answers (1)

If you have the Statistics and Machine Learning Toolbox, you can generate correlated normal variables with the mvnrnd function.

3 Comments

Thanks for your answer. I think Mvnrnd function use a variance for all variables I want each variable has a special variance. Is it true?
If you read the documentation carefully, you will see that you can specify the full variance matrix. Here is an example:
N = 1000000;
mu = [0; 0; 0];
sigma = [1.0 0.5 0.5;
0.5 0.9 0.7;
0.5 0.7 0.7];
x = mvnrnd(mu,sigma,N);
var(x)
ans = 1×3
0.9983 0.8980 0.6988

Sign in to comment.

Asked:

on 3 Oct 2021

Commented:

on 3 Oct 2021

Community Treasure Hunt

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

Start Hunting!