Calculation MAPE (Mean Absolute Percentage) except for some values

Hi everyone;
I am using a function for Neural Network model. In the function as conclusion, I want to calculate MAPE values and I am using the formula above. But I have a problem that Yv vector has 0 (zero) values, as a result this MAPE value shows that 'Infinitive'. I want to calculate MAPE except for 0 (zero) values of Yv vector. For this can I update MAPE formula? Thank you very much.
MAPE= mean((abs(ye-Yv))./Yv)
Yv=Real values vector
ye=Neural Network model's estimated values

1 Comment

Dear,
You may just remove the rows where you have the zeros.
e.g.,
indexes = (Yv == 0) %Find teh places where there are zeros
Yv(indexes) = []; %remove them from Yv
Ye(indexes) = []; % remove similar points in Ye
Then you proceed ):

Sign in to comment.

Answers (1)

Hello,
You can also use only finite numbers.
pre_MAPE = abs((ye-Yv)./Yv);
MAPE = mean(pre_MAPE(isfinite(pre_MAPE)));

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Asked:

on 11 Feb 2019

Answered:

on 10 May 2021

Community Treasure Hunt

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

Start Hunting!