Question

I don't know whether this is possible or not but let me explain my question

Imagine that I have the below array

errors=[e1,e2,e3];

Now what I want to calculate is below

MSE=1/(array_lenght)*[e1^2+e2^2+e3^2];

I can make this with a loop but I wonder if there is any quick way.

Was it helpful?

Solution

This finds the mean of the squared errors:

MSE = mean(errors.^2)

Each element is squared separately, and then the mean of the resulting vector is found.

OTHER TIPS

sum(errors.^2) / numel(errors)

Raising powers and adding can be done together instead of sequentially:

MSE = (errors*errors') / numel(errors)
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top