Jak obliczyć wmape w r (z przykładem)


Jedną z najczęściej używanych metryk do pomiaru dokładności prognozy modelu jest WMAPE , co oznacza średni ważony bezwzględny błąd procentowy .

Wzór do obliczenia WMAPE to:

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

Złoto:

  • Σ – symbol oznaczający „sumę”
  • y i – Rzeczywista wartość i-tej obserwacji
  • ŷ i – Przewidywana wartość i- tej obserwacji
  • w i – waga i- tej obserwacji

Możemy zdefiniować następującą funkcję do obliczania WMAPE w R:

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

Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.

Przykład: obliczanie WMAPE w R

Załóżmy, że mamy następującą ramkę danych w R, która zawiera informacje o aktualnej i prognozowanej sprzedaży w sklepie detalicznym:

 #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

Aby obliczyć WMAPE dla różnicy między rzeczywistą a prognozowaną sprzedażą, możemy zdefiniować wektor wag, których będziemy używać, a następnie skorzystać z funkcji WMAPE, którą zdefiniowaliśmy wcześniej:

 #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

WMAPE dla tego modelu okazuje się wynosić 13,27635% .

Oznacza to, że średni ważony bezwzględny błąd procentowy między przewidywanymi wartościami sprzedaży a rzeczywistymi wartościami sprzedaży wynosi 13,27635%.

Należy pamiętać, że w tym przykładzie przypisaliśmy znacznie większe wagi wartościom stycznia i lutego.

W zależności od konkretnego problemu możesz przypisać większe lub mniejsze wagi różnym obserwacjom w oparciu o wagę każdego błędu w modelu.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:

Jak obliczyć MAPE w R
Jak obliczyć SMAPE w R
Jak obliczyć RMSE w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *