Calculation MAPE (Mean Absolute Percentage) except for some values

40 views (last 30 days)
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
Abdulrahman Haruna
Abdulrahman Haruna on 26 Aug 2019
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)

Luciana Reys
Luciana Reys on 10 May 2021
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

Community Treasure Hunt

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

Start Hunting!