MATLAB Answers

Standardisation and measurement criteria

2 views (last 30 days)
Tania
Tania on 27 Jul 2014
Edited: dpb on 27 Jul 2014
Hi everyone,
Can anyone help me with this problem: I have used zscore to standardise my linear model with 3 predictor variables. The question is, how do I interpret now my MAE,MSE, RMSE? As e.g. the MAE normally would give me an exact number, now I only get a 0.04 number... how do I inpret it?
Thank you!

Accepted Answer

dpb
dpb on 27 Jul 2014
Edited: dpb on 27 Jul 2014
>> x=1:10;x=x';y=rand(size(x)); % some toy data
>> [b,~,~,~,stats]=regress(y,[ones(size(x)) x]); % not standardized
>> [bz,~,~,~,zstats]=regress(y,[ones(size(x)) zscore(x)]); % standardize x
>> [stats' zstats']
ans =
0.0100 0.0100
0.0808 0.0808
0.7834 0.7834
0.0643 0.0643
They're the same...just must remember to standardize x before evaluating the regression.
Now, add in standarization of y, too...
>> [bzy,~,~,~,zystats]=regress(zscore(y),[ones(size(x)) zscore(x)]);
>> [stats' zstats' zystats']
ans =
0.0100 0.0100 0.0100
0.0808 0.0808 0.0808
0.7834 0.7834 0.7834
0.0643 0.0643 1.1137
>>
Now the variance of the residuals is different because the scale factor for y is changed--with the rand() y used here, it's actually larger numerical since std(y)<1.
The upshot is, those statistics whose values are dependent upon the magnitude are scaled per the computation of the statistic whereas those that are either not scaled depending on which version of standardization used (x or x and y) or are invariant to the magnitude of the variables aren't.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!