MATLAB: Generate random sample for linear regression

econometricsMATLABmultiple linear regressionrandom number generatorregressionsimulation

Hi guys
can anyone help me how to generate random sample for y, x1 and x2 in the following model (multiple linear regression):
yi= a + bx1 + cx2 + e
where a, b and c are parameters and e is random error.

Best Answer

% First you have to define the characteristics of x1, x2, and e.
% These can be any values you want, such as:
mu1 = 0; % Mean of x1
sd1 = 1; % Standard deviation of x1
mu2 = 100;
sd2 = 10;
rhoxy = 0.3; % the true correlation of x1 and x2
mue = 0; % Mean of e, usually assumed to be zero
sde = 5; % Standard deviation of e
a = 4; % Known parameters of your regression model
b = 3;
c = 2;
nPoints = 100; % the number of data rows you want to generate
% The rest just uses those values:
mu = [mu1, mu2];
sigma = [sd1^2 sd1*sd2*rhoxy; sd1*sd2*rhoxy sd2^2];
x = mvnrnd(mu,sigma,nPoints);
e = mue + sde*randn(nPoints,1);
y = a + b*x(:,1) + c*x(:,2) + e;