Come calcolare wmape in r (con esempio)


Uno dei parametri più comunemente utilizzati per misurare l’accuratezza della previsione di un modello è WMAPE , che sta per errore percentuale assoluto medio ponderato .

La formula per calcolare WMAPE è:

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

Oro:

  • Σ – un simbolo che significa “somma”
  • y i – Il valore reale dell’i -esima osservazione
  • ŷ i – Il valore previsto dell’iesima osservazione
  • w i – Il peso dell’i- esima osservazione

Possiamo definire la seguente funzione per calcolare WMAPE in R:

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

L’esempio seguente mostra come utilizzare questa funzione nella pratica.

Esempio: calcolo di WMAPE in R

Supponiamo di avere il seguente frame di dati in R che contiene informazioni sulle vendite effettive e previste per un negozio al dettaglio:

 #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

Per calcolare il WMAPE per la differenza tra le vendite effettive e quelle previste, possiamo definire un vettore di pesi da utilizzare, quindi utilizzare la funzione WMAPE definita in precedenza:

 #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

Il WMAPE per questo modello risulta essere 13,27635% .

Cioè, l’errore percentuale assoluto medio ponderato tra i valori di vendita previsti e i valori di vendita effettivi è 13,27635%.

Tieni presente che in questo esempio abbiamo assegnato pesi molto maggiori ai valori di gennaio e febbraio.

A seconda del problema specifico, è possibile assegnare pesi maggiori o minori a diverse osservazioni in base all’importanza di ciascun errore nel modello.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in R:

Come calcolare MAPE in R
Come calcolare SMAPE in R
Come calcolare l’RMSE in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *