Quantcast

Documentation Center

  • Trial Software
  • Product Updates

random

Class: LinearModel

Simulate responses for linear regression model

Syntax

ysim = random(mdl)
ysim = random(mdl,Xnew)

Description

ysim = random(mdl) simulates responses from the fitted linear model mdl at the original design points.

ysim = random(mdl,Xnew) simulates responses from the mdl linear model to the data in Xnew, adding random noise.

Input Arguments

mdl

Linear model, as constructed by fitlm or stepwiselm.

Xnew

Points at which mdl predicts responses.

  • If Xnew is a table or dataset array, it must contain the predictor names in mdl.

  • If Xnew is a numeric matrix, it must have the same number of variables (columns) as was used to create mdl. Furthermore, all variables used in creating mdl must be numeric.

Output Arguments

ysim

Vector of predicted mean values at Xnew, perturbed by random noise. The noise is independent, normally distributed, with mean zero, and variance equal to the estimated error variance of the model.

Examples

expand all

Simulate Response Data

Create a model of car mileage as a function of weight, and simulate the response.

Create a quadratic model of car mileage as a function of weight from the carsmall data.

load carsmall
X = Weight;
y = MPG;
mdl = fitlm(X,y,'quadratic');

Create simulated responses to the data.

Xnew = X;
ysim = random(mdl,Xnew);

Plot the original responses and the simulated responses to see how they differ.

plot(X,y,'o',X,ysim,'x')
legend('Data','Simulated')

Alternatives

For predictions without random noise, use predict or feval.

See Also

| |

How To

Was this topic helpful?