Hoe wmape in r te berekenen (met voorbeeld)


Een van de meest gebruikte maatstaven om de voorspellingsnauwkeurigheid van een model te meten is WMAPE , wat staat voor gewogen gemiddelde absolute procentuele fout .

De formule om WMAPE te berekenen is:

WMAPE = (Σ|y ik – ŷ ik |*w ik ) / (Σy ik *w ik ) * 100

Goud:

  • Σ – een symbool dat “som” betekent
  • y i – De werkelijke waarde van de i-de waarneming
  • ŷ i – De voorspelde waarde van de i- de waarneming
  • w i – Het gewicht van de i- de waarneming

We kunnen de volgende functie definiëren om WMAPE in R te berekenen:

 find_WMAPE <- function (y, yhat, w){
  return (sum(abs(y-yhat)*w)/sum(y*w)*100)
}

Het volgende voorbeeld laat zien hoe u deze functie in de praktijk kunt gebruiken.

Voorbeeld: WMAPE berekenen in R

Stel dat we het volgende gegevensframe in R hebben dat informatie bevat over de werkelijke en verwachte verkopen voor een winkel:

 #create dataset
data <- data. frame (actual=c(23, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24),
                   forecast=c(37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23))

#view dataset
data

   current forecast
1 23 37
2 37 40
3 44 46
4 47 44
5 48 46
6 48 50
7 46 45
8 43 44
9 32 34
10 27 30
11 26 22
12 24 23

Om de WMAPE te berekenen voor het verschil tussen werkelijke en voorspelde verkopen, kunnen we een vector van gewichten definiëren die we moeten gebruiken, en vervolgens de WMAPE-functie gebruiken die we eerder hebben gedefinieerd:

 #define function to calculate WMAPE
find_WMAPE <- function (y, yhat, w){
  return (sum(abs(y-yhat)*w)/sum(y*w)*100)
}

#define weights for each month
weights <- c(20, 20, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6)

#calculate WMAPE
find_WMAPE(df$actual, df$predicted, weights)

[1] 13.27635

De WMAPE voor dit model blijkt 13,27635% te zijn.

Dat wil zeggen dat de gewogen gemiddelde absolute procentuele fout tussen de voorspelde verkoopwaarden en de werkelijke verkoopwaarden 13,27635% bedraagt.

Merk op dat we in dit voorbeeld veel grotere gewichten hebben toegekend aan de waarden van januari en februari.

Afhankelijk van uw specifieke probleem kunt u grotere of kleinere gewichten toekennen aan verschillende waarnemingen, op basis van het belang van elke fout in uw model.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:

Hoe MAPE in R te berekenen
Hoe SMAPE in R te berekenen
Hoe RMSE in R te berekenen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert