Come eseguire previsioni ingenue in r: con esempi
Una previsione ingenua è quella in cui la previsione per un dato periodo è semplicemente uguale al valore osservato nel periodo precedente.
Ad esempio, supponiamo di avere le seguenti vendite di un determinato prodotto durante i primi tre mesi dell’anno:
Le previsioni di vendita di aprile equivarrebbero semplicemente alle vendite effettive del marzo precedente:
Sebbene questo metodo sia semplice, tende a funzionare sorprendentemente bene nella pratica.
Questo tutorial fornisce un esempio passo passo di come eseguire previsioni ingenue in R.
Passaggio 1: inserisci i dati
Innanzitutto, inseriremo i dati di vendita su un periodo di 12 mesi presso un’azienda immaginaria:
#create vector to hold actual sales data
actual <- c(34, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24)
Passaggio 2: generare previsioni ingenue
Successivamente, utilizzeremo le seguenti formule per creare previsioni ingenue per ogni mese:
#generate naive forecasts forecast <- c(NA, actual[- length (actual)]) #view naive forecasts forecast [1] NA 34 37 44 47 48 48 46 43 32 27 26
Tieni presente che abbiamo semplicemente utilizzato NA per il primo valore previsto.
Passaggio 3: misurare l’accuratezza della previsione
Infine, dobbiamo misurare l’accuratezza delle previsioni. Due parametri comuni utilizzati per misurare la precisione includono:
- Errore percentuale assoluto medio (MAPE)
- Errore assoluto medio (MAE)
Possiamo utilizzare il seguente codice per calcolare entrambe le metriche:
#calculate MAPE mean(abs((actual-forecast)/actual), na. rm = T ) * 100 [1] 9.898281 #calculate MAE mean(abs(actual-forecast), na. rm = T ) [1] 3.454545
L’errore percentuale medio assoluto è 9,898% e l’errore medio assoluto è 3,45.
Per scoprire se questa previsione è utile, possiamo confrontarla con altri modelli di previsione e vedere se la precisione della misurazione è migliore o peggiore.
Passaggio 4: visualizza la previsione
Infine, possiamo creare un semplice grafico a linee per visualizzare le differenze tra le vendite effettive e le previsioni di vendita ingenue durante ciascun periodo:
#plot actual sales plot(actual, type=' l ', col = ' red ', main=' Actual vs. Forecasted Sales ', xlab=' Sales Period ', ylab=' Sales ') #add line for forecasted sales lines(forecast, type=' l ', col = ' blue ') #add legend legend(' topright ', legend=c(' Actual ', ' Forecasted '), col=c(' red ', ' blue '), lty=1)
Tieni presente che la linea di vendita prevista è essenzialmente una versione spostata della linea di vendita effettiva.
Questo è esattamente ciò che ci aspetteremmo poiché la previsione ingenua prevede semplicemente che le vendite nel periodo corrente equivarranno alle vendite del periodo precedente.
Risorse addizionali
Come calcolare il MAE in R
Come calcolare MAPE in R
Qual è il valore considerato buono per MAPE?