South ural state university, Chelyabinsk, Russian federation
#Import
library(fpp2)
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
## -- Attaching packages ---------------------------------------------- fpp2 2.4 --
## v ggplot2 3.3.2 v fma 2.4
## v forecast 8.13 v expsmooth 2.3
##
library(forecast)
library(ggplot2)
library("readxl")
library(moments)
library(forecast)
require(forecast)
require(tseries)
## Loading required package: tseries
require(markovchain)
## Loading required package: markovchain
## Package: markovchain
## Version: 0.8.5-3
## Date: 2020-12-03
## BugReport: https://github.com/spedygiorgio/markovchain/issues
require(data.table)
## Loading required package: data.table
library(Hmisc)
## Loading required package: lattice
## Loading required package: survival
## Loading required package: Formula
##
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:base':
##
## format.pval, units
library(ascii)
library(pander)
##
## Attaching package: 'pander'
## The following object is masked from 'package:ascii':
##
## Pandoc
##Global vriable##
Full_original_data <- read_excel("data2.xlsx", sheet = "Spain") # path of your data ( time series data)
original_data<-Full_original_data$New_cases
y_lab <- "Daily Covid 19 Infection cases in Spain" # input name of data
Actual_date_interval <- c("2020/03/01","2020/12/31")
Forecast_date_interval <- c("2021/01/01","2021/02/14")
validation_data_days <-30
Number_Neural<-5 # Number of Neural For model NNAR Model
NNAR_Model<- TRUE #create new model (TRUE/FALSE)
frequency<-"days"
country.name <- "Spain"
# Data Preparation & calculate some of statistics measures
summary(original_data) # Summary your time series
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.0 344.8 3100.0 5357.2 8816.5 25090.0
# calculate standard deviation
data.frame(kurtosis=kurtosis(original_data)) # calculate Cofficient of kurtosis
## kurtosis
## 1 4.007335
data.frame(skewness=skewness(original_data)) # calculate Cofficient of skewness
## skewness
## 1 1.262296
data.frame(Standard.deviation =sd(original_data))
## Standard.deviation
## 1 6129.711
#processing on data (input data)
rows <- NROW(original_data) # calculate number of rows in time series (number of days)
training_data<-original_data[1:(rows-validation_data_days)] # Training data
testing_data<-original_data[(rows-validation_data_days+1):rows] #testing data
AD<-fulldate<-seq(as.Date(Actual_date_interval[1]),as.Date(Actual_date_interval[2]), frequency) #input range for actual date
FD<-seq(as.Date(Forecast_date_interval[1]),as.Date(Forecast_date_interval[2]), frequency) #input range forecasting date
N_forecasting_days<-nrow(data.frame(FD)) #calculate number of days that you want to forecasting
validation_dates<-tail(AD,validation_data_days) # select validation_dates
validation_data_by_name<-weekdays(validation_dates) # put names of validation dates
forecasting_data_by_name<-weekdays(FD) # put names of Forecasting dates
#NNAR Model
if(NNAR_Model==TRUE){
data_series<-ts(training_data)
model_NNAR<-nnetar(data_series, size = Number_Neural)
saveRDS(model_NNAR, file = "model_NNAR.RDS")
my_model <- readRDS("model_NNAR.RDS")
accuracy(model_NNAR) # accuracy on training data #Print Model Parameters
model_NNAR
}
## Series: data_series
## Model: NNAR(16,5)
## Call: nnetar(y = data_series, size = Number_Neural)
##
## Average of 20 networks, each of which is
## a 16-5-1 network with 91 weights
## options were - linear output units
##
## sigma^2 estimated as 106769
if(NNAR_Model==FALSE){
data_series<-ts(training_data)
#model_NNAR<-nnetar(data_series, size = Number_Numeral)
model_NNAR <- readRDS("model_NNAR.RDS")
accuracy(model_NNAR) # accuracy on training data #Print Model Parameters
model_NNAR
}
# Testing Data Evaluation
forecasting_NNAR <- forecast(model_NNAR, h=N_forecasting_days+validation_data_days)
validation_forecast<-head(forecasting_NNAR$mean,validation_data_days)
MAPE_Per_Day<-round( abs(((testing_data-validation_forecast)/testing_data)*100) ,3)
paste ("MAPE % For ",validation_data_days,frequency,"by using NNAR Model for ==> ",y_lab, sep=" ")
## [1] "MAPE % For 30 days by using NNAR Model for ==> Daily Covid 19 Infection cases in Spain"
MAPE_Mean_All<-paste(round(mean(MAPE_Per_Day),3),"% MAPE ",validation_data_days,frequency,y_lab,sep=" ")
MAPE_Mean_All_NNAR<-round(mean(MAPE_Per_Day),3)
MAPE_NNAR<-paste(round(MAPE_Per_Day,3),"%")
MAPE_NNAR_Model<-paste(MAPE_Per_Day ,"%")
paste (" MAPE that's Error of Forecasting for ",validation_data_days," days in NNAR Model for ==> ",y_lab, sep=" ")
## [1] " MAPE that's Error of Forecasting for 30 days in NNAR Model for ==> Daily Covid 19 Infection cases in Spain"
paste(MAPE_Mean_All,"%")
## [1] "22.807 % MAPE 30 days Daily Covid 19 Infection cases in Spain %"
paste ("MAPE that's Error of Forecasting day by day for ",validation_data_days," days in NNAR Model for ==> ",y_lab, sep=" ")
## [1] "MAPE that's Error of Forecasting day by day for 30 days in NNAR Model for ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(date_NNAR=validation_dates,validation_data_by_name,actual_data=testing_data,forecasting_NNAR=validation_forecast,MAPE_NNAR_Model)), type = "rest")
##
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | | date_NNAR | validation_data_by_name | actual_data | forecasting_NNAR | MAPE_NNAR_Model |
## +====+============+=========================+=============+==================+=================+
## | 1 | 2020-12-02 | Wednesday | 7369.00 | 7204.43 | 2.233 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 2 | 2020-12-03 | Thursday | 9481.00 | 9399.04 | 0.864 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 3 | 2020-12-04 | Friday | 8800.00 | 9268.18 | 5.32 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 4 | 2020-12-05 | Saturday | 8090.00 | 8733.48 | 7.954 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 5 | 2020-12-06 | Sunday | 8352.00 | 9008.76 | 7.864 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 6 | 2020-12-07 | Monday | 4956.00 | 5551.94 | 12.025 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 7 | 2020-12-08 | Tuesday | 3237.00 | 3440.00 | 6.271 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 8 | 2020-12-09 | Wednesday | 5179.00 | 6630.20 | 28.021 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 9 | 2020-12-10 | Thursday | 4014.00 | 9718.37 | 142.112 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 10 | 2020-12-11 | Friday | 8341.00 | 9603.81 | 15.14 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 11 | 2020-12-12 | Saturday | 10688.00 | 8839.10 | 17.299 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 12 | 2020-12-13 | Sunday | 11272.00 | 9548.24 | 15.292 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 13 | 2020-12-14 | Monday | 6557.00 | 6001.10 | 8.478 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 14 | 2020-12-15 | Tuesday | 4235.00 | 3860.95 | 8.832 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 15 | 2020-12-16 | Wednesday | 9803.00 | 6911.48 | 29.496 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 16 | 2020-12-17 | Thursday | 12112.00 | 10734.02 | 11.377 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 17 | 2020-12-18 | Friday | 11681.00 | 11074.95 | 5.188 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 18 | 2020-12-19 | Saturday | 10892.00 | 10081.66 | 7.44 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 19 | 2020-12-20 | Sunday | 12183.00 | 10692.46 | 12.235 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 20 | 2020-12-21 | Monday | 6898.00 | 7121.10 | 3.234 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 21 | 2020-12-22 | Tuesday | 4335.00 | 4671.62 | 7.765 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 22 | 2020-12-23 | Wednesday | 10932.00 | 7500.24 | 31.392 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 23 | 2020-12-24 | Thursday | 13322.00 | 12394.82 | 6.96 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 24 | 2020-12-25 | Friday | 14387.00 | 13522.77 | 6.007 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 25 | 2020-12-26 | Saturday | 9893.00 | 12197.28 | 23.292 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 26 | 2020-12-27 | Sunday | 4833.00 | 12918.24 | 167.292 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 27 | 2020-12-28 | Monday | 6293.00 | 8824.55 | 40.228 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 28 | 2020-12-29 | Tuesday | 5949.00 | 5913.17 | 0.602 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 29 | 2020-12-30 | Wednesday | 15009.00 | 9402.66 | 37.353 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 30 | 2020-12-31 | Thursday | 18741.00 | 15622.40 | 16.641 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_NNAR=tail(forecasting_NNAR$mean,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+---------------------+
## | | FD | forecating_date | forecasting_by_NNAR |
## +====+============+=================+=====================+
## | 1 | 2021-01-01 | Friday | 17913.97 |
## +----+------------+-----------------+---------------------+
## | 2 | 2021-01-02 | Saturday | 16805.53 |
## +----+------------+-----------------+---------------------+
## | 3 | 2021-01-03 | Sunday | 17951.02 |
## +----+------------+-----------------+---------------------+
## | 4 | 2021-01-04 | Monday | 13244.64 |
## +----+------------+-----------------+---------------------+
## | 5 | 2021-01-05 | Tuesday | 9381.99 |
## +----+------------+-----------------+---------------------+
## | 6 | 2021-01-06 | Wednesday | 14599.79 |
## +----+------------+-----------------+---------------------+
## | 7 | 2021-01-07 | Thursday | 22330.59 |
## +----+------------+-----------------+---------------------+
## | 8 | 2021-01-08 | Friday | 24560.48 |
## +----+------------+-----------------+---------------------+
## | 9 | 2021-01-09 | Saturday | 23253.16 |
## +----+------------+-----------------+---------------------+
## | 10 | 2021-01-10 | Sunday | 24762.70 |
## +----+------------+-----------------+---------------------+
## | 11 | 2021-01-11 | Monday | 18968.66 |
## +----+------------+-----------------+---------------------+
## | 12 | 2021-01-12 | Tuesday | 13695.31 |
## +----+------------+-----------------+---------------------+
## | 13 | 2021-01-13 | Wednesday | 19472.53 |
## +----+------------+-----------------+---------------------+
## | 14 | 2021-01-14 | Thursday | 25863.77 |
## +----+------------+-----------------+---------------------+
## | 15 | 2021-01-15 | Friday | 26908.86 |
## +----+------------+-----------------+---------------------+
## | 16 | 2021-01-16 | Saturday | 25230.00 |
## +----+------------+-----------------+---------------------+
## | 17 | 2021-01-17 | Sunday | 25982.66 |
## +----+------------+-----------------+---------------------+
## | 18 | 2021-01-18 | Monday | 20217.95 |
## +----+------------+-----------------+---------------------+
## | 19 | 2021-01-19 | Tuesday | 13679.61 |
## +----+------------+-----------------+---------------------+
## | 20 | 2021-01-20 | Wednesday | 17466.68 |
## +----+------------+-----------------+---------------------+
## | 21 | 2021-01-21 | Thursday | 23709.65 |
## +----+------------+-----------------+---------------------+
## | 22 | 2021-01-22 | Friday | 25476.95 |
## +----+------------+-----------------+---------------------+
## | 23 | 2021-01-23 | Saturday | 23557.12 |
## +----+------------+-----------------+---------------------+
## | 24 | 2021-01-24 | Sunday | 23205.09 |
## +----+------------+-----------------+---------------------+
## | 25 | 2021-01-25 | Monday | 17867.20 |
## +----+------------+-----------------+---------------------+
## | 26 | 2021-01-26 | Tuesday | 11752.30 |
## +----+------------+-----------------+---------------------+
## | 27 | 2021-01-27 | Wednesday | 16666.55 |
## +----+------------+-----------------+---------------------+
## | 28 | 2021-01-28 | Thursday | 20539.83 |
## +----+------------+-----------------+---------------------+
## | 29 | 2021-01-29 | Friday | 20034.65 |
## +----+------------+-----------------+---------------------+
## | 30 | 2021-01-30 | Saturday | 17039.38 |
## +----+------------+-----------------+---------------------+
## | 31 | 2021-01-31 | Sunday | 16163.48 |
## +----+------------+-----------------+---------------------+
## | 32 | 2021-02-01 | Monday | 12574.01 |
## +----+------------+-----------------+---------------------+
## | 33 | 2021-02-02 | Tuesday | 7500.17 |
## +----+------------+-----------------+---------------------+
## | 34 | 2021-02-03 | Wednesday | 11600.65 |
## +----+------------+-----------------+---------------------+
## | 35 | 2021-02-04 | Thursday | 13818.41 |
## +----+------------+-----------------+---------------------+
## | 36 | 2021-02-05 | Friday | 12448.73 |
## +----+------------+-----------------+---------------------+
## | 37 | 2021-02-06 | Saturday | 10682.33 |
## +----+------------+-----------------+---------------------+
## | 38 | 2021-02-07 | Sunday | 10386.94 |
## +----+------------+-----------------+---------------------+
## | 39 | 2021-02-08 | Monday | 7768.23 |
## +----+------------+-----------------+---------------------+
## | 40 | 2021-02-09 | Tuesday | 5051.11 |
## +----+------------+-----------------+---------------------+
## | 41 | 2021-02-10 | Wednesday | 8407.03 |
## +----+------------+-----------------+---------------------+
## | 42 | 2021-02-11 | Thursday | 9398.30 |
## +----+------------+-----------------+---------------------+
## | 43 | 2021-02-12 | Friday | 9040.03 |
## +----+------------+-----------------+---------------------+
## | 44 | 2021-02-13 | Saturday | 7880.77 |
## +----+------------+-----------------+---------------------+
## | 45 | 2021-02-14 | Sunday | 7883.54 |
## +----+------------+-----------------+---------------------+
plot(forecasting_NNAR,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab)
x1_test <- ts(testing_data, start =(rows-validation_data_days+1) )
lines(x1_test, col='red',lwd=2)

graph1<-autoplot(forecasting_NNAR,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab)
graph1

##bats model
# Data Modeling
data_series<-ts(training_data) # make your data to time series
autoplot(data_series ,xlab=paste ("Time in", frequency, sep=" "), ylab = y_lab, main=paste ("Actual Data :", y_lab, sep=" "))

model_bats<-bats(data_series)
accuracy(model_bats) # accuracy on training data
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set -17.16487 1097.63 646.2488 NaN Inf 0.5675442 -0.1034393
# Print Model Parameters
model_bats
## BATS(1, {5,3}, 1, -)
##
## Call: bats(y = data_series)
##
## Parameters
## Alpha: 0.3691648
## Beta: 0.08404253
## Damping Parameter: 1
## AR coefficients: -0.139697 -0.60104 -0.578951 -0.264131 -0.774325
## MA coefficients: 0.551002 0.309044 0.714479
##
## Seed States:
## [,1]
## [1,] 26.94943
## [2,] -35.83257
## [3,] 0.00000
## [4,] 0.00000
## [5,] 0.00000
## [6,] 0.00000
## [7,] 0.00000
## [8,] 0.00000
## [9,] 0.00000
## [10,] 0.00000
##
## Sigma: 1097.63
## AIC: 6657.528
#ploting BATS Model
plot(model_bats,xlab = paste ("Time in", frequency ,y_lab , sep=" "))

# Testing Data Evaluation
forecasting_bats <- predict(model_bats, h=N_forecasting_days+validation_data_days)
validation_forecast<-head(forecasting_bats$mean,validation_data_days)
MAPE_Per_Day<-round( abs(((testing_data-validation_forecast)/testing_data)*100) ,3)
paste ("MAPE % For ",validation_data_days,frequency,"by using bats Model for ==> ",y_lab, sep=" ")
## [1] "MAPE % For 30 days by using bats Model for ==> Daily Covid 19 Infection cases in Spain"
MAPE_Mean_All.bats_Model<-round(mean(MAPE_Per_Day),3)
MAPE_Mean_All.bats<-paste(round(mean(MAPE_Per_Day),3),"% MAPE ",validation_data_days,frequency,y_lab,sep=" ")
MAPE_bats<-paste(round(MAPE_Per_Day,3),"%")
MAPE_bats_Model<-paste(MAPE_Per_Day ,"%")
paste (" MAPE that's Error of Forecasting for ",validation_data_days," days in bats Model for ==> ",y_lab, sep=" ")
## [1] " MAPE that's Error of Forecasting for 30 days in bats Model for ==> Daily Covid 19 Infection cases in Spain"
paste(MAPE_Mean_All.bats,"%")
## [1] "91.059 % MAPE 30 days Daily Covid 19 Infection cases in Spain %"
paste ("MAPE that's Error of Forecasting day by day for ",validation_data_days," days in bats Model for ==> ",y_lab, sep=" ")
## [1] "MAPE that's Error of Forecasting day by day for 30 days in bats Model for ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(date_bats=validation_dates,validation_data_by_name,actual_data=testing_data,forecasting_bats=validation_forecast,MAPE_bats_Model)), type = "rest")
##
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | | date_bats | validation_data_by_name | actual_data | forecasting_bats | MAPE_bats_Model |
## +====+============+=========================+=============+==================+=================+
## | 1 | 2020-12-02 | Wednesday | 7369.00 | 6409.57 | 13.02 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 2 | 2020-12-03 | Thursday | 9481.00 | 7628.05 | 19.544 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 3 | 2020-12-04 | Friday | 8800.00 | 6318.43 | 28.2 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 4 | 2020-12-05 | Saturday | 8090.00 | 6649.42 | 17.807 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 5 | 2020-12-06 | Sunday | 8352.00 | 6166.56 | 26.167 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 6 | 2020-12-07 | Monday | 4956.00 | 2774.85 | 44.01 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 7 | 2020-12-08 | Tuesday | 3237.00 | 1388.87 | 57.094 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 8 | 2020-12-09 | Wednesday | 5179.00 | 3466.45 | 33.067 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 9 | 2020-12-10 | Thursday | 4014.00 | 4483.33 | 11.692 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 10 | 2020-12-11 | Friday | 8341.00 | 3803.94 | 54.395 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 11 | 2020-12-12 | Saturday | 10688.00 | 3716.42 | 65.228 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 12 | 2020-12-13 | Sunday | 11272.00 | 2711.92 | 75.941 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 13 | 2020-12-14 | Monday | 6557.00 | 60.07 | 99.084 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 14 | 2020-12-15 | Tuesday | 4235.00 | -883.80 | 120.869 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 15 | 2020-12-16 | Wednesday | 9803.00 | 611.88 | 93.758 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 16 | 2020-12-17 | Thursday | 12112.00 | 1477.82 | 87.799 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 17 | 2020-12-18 | Friday | 11681.00 | 1121.80 | 90.396 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 18 | 2020-12-19 | Saturday | 10892.00 | 727.05 | 93.325 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 19 | 2020-12-20 | Sunday | 12183.00 | -530.15 | 104.352 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 20 | 2020-12-21 | Monday | 6898.00 | -2658.79 | 138.544 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 21 | 2020-12-22 | Tuesday | 4335.00 | -3314.54 | 176.46 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 22 | 2020-12-23 | Wednesday | 10932.00 | -2196.52 | 120.093 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 23 | 2020-12-24 | Thursday | 13322.00 | -1449.26 | 110.879 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 24 | 2020-12-25 | Friday | 14387.00 | -1671.05 | 111.615 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 25 | 2020-12-26 | Saturday | 9893.00 | -2275.81 | 123.004 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 26 | 2020-12-27 | Sunday | 4833.00 | -3638.98 | 175.295 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 27 | 2020-12-28 | Monday | 6293.00 | -5380.54 | 185.5 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 28 | 2020-12-29 | Tuesday | 5949.00 | -5848.64 | 198.313 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 29 | 2020-12-30 | Wednesday | 15009.00 | -4976.61 | 133.157 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 30 | 2020-12-31 | Thursday | 18741.00 | -4341.26 | 123.165 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_bats=tail(forecasting_bats$mean,N_forecasting_days),lower=tail(forecasting_bats$lower,N_forecasting_days),Upper=tail(forecasting_bats$lower,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | | FD | forecating_date | forecasting_by_bats | lower.80. | lower.95. | Upper.80. | Upper.95. |
## +====+============+=================+=====================+===========+===========+===========+===========+
## | 1 | 2021-01-01 | Friday | -4528.39 | -16196.19 | -22372.74 | -16196.19 | -22372.74 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 2 | 2021-01-02 | Saturday | -5277.60 | -17360.47 | -23756.76 | -17360.47 | -23756.76 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 3 | 2021-01-03 | Sunday | -6656.96 | -19117.30 | -25713.40 | -19117.30 | -25713.40 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 4 | 2021-01-04 | Monday | -8109.47 | -20968.76 | -27776.06 | -20968.76 | -27776.06 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 5 | 2021-01-05 | Tuesday | -8447.08 | -21809.27 | -28882.79 | -21809.27 | -28882.79 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 6 | 2021-01-06 | Wednesday | -7746.32 | -21707.52 | -29098.13 | -21707.52 | -29098.13 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 7 | 2021-01-07 | Thursday | -7216.70 | -21761.65 | -29461.29 | -21761.65 | -29461.29 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 8 | 2021-01-08 | Friday | -7425.47 | -22485.91 | -30458.43 | -22485.91 | -30458.43 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 9 | 2021-01-09 | Saturday | -8267.25 | -23787.80 | -32003.88 | -23787.80 | -32003.88 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 10 | 2021-01-10 | Sunday | -9615.26 | -25571.03 | -34017.51 | -25571.03 | -34017.51 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 11 | 2021-01-11 | Monday | -10843.43 | -27263.33 | -35955.49 | -27263.33 | -35955.49 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 12 | 2021-01-12 | Tuesday | -11090.05 | -28062.57 | -37047.28 | -28062.57 | -37047.28 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 13 | 2021-01-13 | Wednesday | -10513.78 | -28109.11 | -37423.51 | -28109.11 | -37423.51 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 14 | 2021-01-14 | Thursday | -10087.94 | -28294.08 | -37931.82 | -28294.08 | -37931.82 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 15 | 2021-01-15 | Friday | -10343.60 | -29102.02 | -39032.12 | -29102.02 | -39032.12 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 16 | 2021-01-16 | Saturday | -11242.12 | -30504.46 | -40701.33 | -30504.46 | -40701.33 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 17 | 2021-01-17 | Sunday | -12531.51 | -32281.03 | -42735.80 | -32281.03 | -42735.80 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 18 | 2021-01-18 | Monday | -13582.82 | -33853.41 | -44584.01 | -33853.41 | -44584.01 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 19 | 2021-01-19 | Tuesday | -13763.78 | -34629.50 | -45675.14 | -34629.50 | -45675.14 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 20 | 2021-01-20 | Wednesday | -13285.63 | -34800.32 | -46189.50 | -34800.32 | -46189.50 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 21 | 2021-01-21 | Thursday | -12959.48 | -35110.73 | -46836.90 | -35110.73 | -46836.90 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 22 | 2021-01-22 | Friday | -13272.37 | -36010.49 | -48047.32 | -36010.49 | -48047.32 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 23 | 2021-01-23 | Saturday | -14200.45 | -37483.35 | -49808.57 | -37483.35 | -49808.57 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 24 | 2021-01-24 | Sunday | -15418.53 | -39237.14 | -51845.95 | -39237.14 | -51845.95 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 25 | 2021-01-25 | Monday | -16326.60 | -40715.77 | -53626.62 | -40715.77 | -53626.62 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 26 | 2021-01-26 | Tuesday | -16461.00 | -41484.02 | -54730.40 | -41484.02 | -54730.40 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 27 | 2021-01-27 | Wednesday | -16064.62 | -41762.45 | -55366.06 | -41762.45 | -55366.06 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 28 | 2021-01-28 | Thursday | -15833.90 | -42194.23 | -56148.54 | -42194.23 | -56148.54 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 29 | 2021-01-29 | Friday | -16204.32 | -43183.76 | -57465.81 | -43183.76 | -57465.81 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 30 | 2021-01-30 | Saturday | -17142.88 | -44706.31 | -59297.51 | -44706.31 | -59297.51 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 31 | 2021-01-31 | Sunday | -18284.12 | -46427.90 | -61326.32 | -46427.90 | -61326.32 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 32 | 2021-02-01 | Monday | -19074.79 | -47833.76 | -63057.83 | -47833.76 | -63057.83 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 33 | 2021-02-02 | Tuesday | -19176.62 | -48604.56 | -64182.76 | -48604.56 | -64182.76 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 34 | 2021-02-03 | Wednesday | -18852.52 | -48981.17 | -64930.31 | -48981.17 | -64930.31 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 35 | 2021-02-04 | Thursday | -18711.43 | -49527.94 | -65841.21 | -49527.94 | -65841.21 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 36 | 2021-02-05 | Friday | -19135.25 | -50602.00 | -67259.50 | -50602.00 | -67259.50 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 37 | 2021-02-06 | Saturday | -20070.14 | -52158.08 | -69144.41 | -52158.08 | -69144.41 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 38 | 2021-02-07 | Sunday | -21134.04 | -53844.04 | -71159.67 | -53844.04 | -71159.67 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 39 | 2021-02-08 | Monday | -21827.16 | -55192.75 | -72855.43 | -55192.75 | -72855.43 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 40 | 2021-02-09 | Tuesday | -21907.73 | -55975.00 | -74009.13 | -55975.00 | -74009.13 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 41 | 2021-02-10 | Wednesday | -21649.62 | -56442.93 | -74861.39 | -56442.93 | -74861.39 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 42 | 2021-02-11 | Thursday | -21591.84 | -57098.21 | -75894.15 | -57098.21 | -75894.15 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 43 | 2021-02-12 | Friday | -22062.32 | -58248.93 | -77404.96 | -58248.93 | -77404.96 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 44 | 2021-02-13 | Saturday | -22983.56 | -59826.98 | -79330.71 | -59826.98 | -79330.71 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 45 | 2021-02-14 | Sunday | -23972.13 | -61476.53 | -81330.16 | -61476.53 | -81330.16 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
plot(forecasting_bats)
x1_test <- ts(testing_data, start =(rows-validation_data_days+1) )
lines(x1_test, col='red',lwd=2)

graph1<-autoplot(forecasting_bats,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab)
graph1

## TBATS Model
# Data Modeling
data_series<-ts(training_data)
model_TBATS<-forecast:::fitSpecificTBATS(data_series,use.box.cox=FALSE, use.beta=TRUE, seasonal.periods=c(6),use.damping=FALSE,k.vector=c(2))
accuracy(model_TBATS) # accuracy on training data
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set 89.16488 2003.792 1007.53 NaN Inf 0.8848266 -0.1265145
# Print Model Parameters
model_TBATS
## TBATS(1, {0,0}, 1, {<6,2>})
##
## Call: NULL
##
## Parameters
## Alpha: 1.54236
## Beta: -0.007504369
## Damping Parameter: 1
## Gamma-1 Values: -0.003587939
## Gamma-2 Values: 0.006439018
##
## Seed States:
## [,1]
## [1,] 22.27807
## [2,] -34.57980
## [3,] -12.70961
## [4,] -12.75119
## [5,] 53.98776
## [6,] -29.96254
##
## Sigma: 2003.792
## AIC: 7039.589
plot(model_TBATS,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab)

# Testing Data Evaluation
forecasting_tbats <- predict(model_TBATS, h=N_forecasting_days+validation_data_days)
validation_forecast<-head(forecasting_tbats$mean,validation_data_days)
MAPE_Per_Day<-round( abs(((testing_data-validation_forecast)/testing_data)*100) ,3)
paste ("MAPE % For ",validation_data_days,frequency,"by using TBATS Model for ==> ",y_lab, sep=" ")
## [1] "MAPE % For 30 days by using TBATS Model for ==> Daily Covid 19 Infection cases in Spain"
MAPE_Mean_All.TBATS_Model<-round(mean(MAPE_Per_Day),3)
MAPE_Mean_All.TBATS<-paste(round(mean(MAPE_Per_Day),3),"% MAPE ",validation_data_days,frequency,y_lab,sep=" ")
MAPE_TBATS<-paste(round(MAPE_Per_Day,3),"%")
MAPE_TBATS_Model<-paste(MAPE_Per_Day ,"%")
paste (" MAPE that's Error of Forecasting for ",validation_data_days," days in TBATS Model for ==> ",y_lab, sep=" ")
## [1] " MAPE that's Error of Forecasting for 30 days in TBATS Model for ==> Daily Covid 19 Infection cases in Spain"
paste(MAPE_Mean_All.TBATS,"%")
## [1] "95.298 % MAPE 30 days Daily Covid 19 Infection cases in Spain %"
paste ("MAPE that's Error of Forecasting day by day for ",validation_data_days," days in TBATS Model for ==> ",y_lab, sep=" ")
## [1] "MAPE that's Error of Forecasting day by day for 30 days in TBATS Model for ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(date_TBATS=validation_dates,validation_data_by_name,actual_data=testing_data,forecasting_TBATS=validation_forecast,MAPE_TBATS_Model)), type = "rest")
##
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | | date_TBATS | validation_data_by_name | actual_data | forecasting_TBATS | MAPE_TBATS_Model |
## +====+============+=========================+=============+===================+==================+
## | 1 | 2020-12-02 | Wednesday | 7369.00 | 3800.86 | 48.421 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 2 | 2020-12-03 | Thursday | 9481.00 | 3764.37 | 60.296 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 3 | 2020-12-04 | Friday | 8800.00 | 3083.05 | 64.965 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 4 | 2020-12-05 | Saturday | 8090.00 | 3093.85 | 61.757 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 5 | 2020-12-06 | Sunday | 8352.00 | 3059.82 | 63.364 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 6 | 2020-12-07 | Monday | 4956.00 | 2311.31 | 53.363 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 7 | 2020-12-08 | Tuesday | 3237.00 | 2252.45 | 30.415 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 8 | 2020-12-09 | Wednesday | 5179.00 | 2215.96 | 57.213 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 9 | 2020-12-10 | Thursday | 4014.00 | 1534.64 | 61.768 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 10 | 2020-12-11 | Friday | 8341.00 | 1545.44 | 81.472 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 11 | 2020-12-12 | Saturday | 10688.00 | 1511.42 | 85.859 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 12 | 2020-12-13 | Sunday | 11272.00 | 762.90 | 93.232 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 13 | 2020-12-14 | Monday | 6557.00 | 704.05 | 89.263 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 14 | 2020-12-15 | Tuesday | 4235.00 | 667.55 | 84.237 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 15 | 2020-12-16 | Wednesday | 9803.00 | -13.77 | 100.14 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 16 | 2020-12-17 | Thursday | 12112.00 | -2.96 | 100.024 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 17 | 2020-12-18 | Friday | 11681.00 | -36.99 | 100.317 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 18 | 2020-12-19 | Saturday | 10892.00 | -785.50 | 107.212 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 19 | 2020-12-20 | Sunday | 12183.00 | -844.36 | 106.931 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 20 | 2020-12-21 | Monday | 6898.00 | -880.86 | 112.77 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 21 | 2020-12-22 | Tuesday | 4335.00 | -1562.18 | 136.036 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 22 | 2020-12-23 | Wednesday | 10932.00 | -1551.37 | 114.191 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 23 | 2020-12-24 | Thursday | 13322.00 | -1585.40 | 111.901 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 24 | 2020-12-25 | Friday | 14387.00 | -2333.91 | 116.222 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 25 | 2020-12-26 | Saturday | 9893.00 | -2392.77 | 124.186 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 26 | 2020-12-27 | Sunday | 4833.00 | -2429.26 | 150.264 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 27 | 2020-12-28 | Monday | 6293.00 | -3110.58 | 149.429 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 28 | 2020-12-29 | Tuesday | 5949.00 | -3099.78 | 152.106 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 29 | 2020-12-30 | Wednesday | 15009.00 | -3133.81 | 120.88 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
## | 30 | 2020-12-31 | Thursday | 18741.00 | -3882.32 | 120.716 % |
## +----+------------+-------------------------+-------------+-------------------+------------------+
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_TBATS=tail(forecasting_tbats$mean,N_forecasting_days),Lower=tail(forecasting_tbats$lower,N_forecasting_days),Upper=tail(forecasting_tbats$upper,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | | FD | forecating_date | forecasting_by_TBATS | Lower.80. | Lower.95. | Upper.80. | Upper.95. |
## +====+============+=================+======================+===========+===========+===========+===========+
## | 1 | 2021-01-01 | Friday | -3941.18 | -25014.80 | -36170.51 | 17132.45 | 28288.15 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 2 | 2021-01-02 | Saturday | -3977.67 | -25370.61 | -36695.35 | 17415.27 | 28740.01 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 3 | 2021-01-03 | Sunday | -4658.99 | -26364.00 | -37853.93 | 17046.01 | 28535.95 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 4 | 2021-01-04 | Monday | -4648.19 | -26660.83 | -38313.62 | 17364.46 | 29017.25 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 5 | 2021-01-05 | Tuesday | -4682.21 | -26999.22 | -38813.14 | 17634.80 | 29448.71 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 6 | 2021-01-06 | Wednesday | -5430.73 | -28039.47 | -40007.82 | 17178.02 | 29146.36 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 7 | 2021-01-07 | Thursday | -5489.58 | -28383.44 | -40502.71 | 17404.27 | 29523.54 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 8 | 2021-01-08 | Friday | -5526.08 | -28705.48 | -40975.91 | 17653.32 | 29923.76 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 9 | 2021-01-09 | Saturday | -6207.40 | -29666.55 | -42085.07 | 17251.75 | 29670.27 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 10 | 2021-01-10 | Sunday | -6196.60 | -29932.19 | -42497.05 | 17539.00 | 30103.86 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 11 | 2021-01-11 | Monday | -6230.62 | -30240.36 | -42950.35 | 17779.12 | 30489.11 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 12 | 2021-01-12 | Tuesday | -6979.14 | -31252.10 | -44101.43 | 17293.83 | 30143.16 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 13 | 2021-01-13 | Wednesday | -7037.99 | -31568.68 | -44554.45 | 17492.70 | 30478.47 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 14 | 2021-01-14 | Thursday | -7074.49 | -31863.86 | -44986.56 | 17714.89 | 30837.59 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 15 | 2021-01-15 | Friday | -7755.81 | -32799.04 | -46056.13 | 17287.43 | 30544.52 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 16 | 2021-01-16 | Saturday | -7745.00 | -33039.55 | -46429.68 | 17549.55 | 30939.67 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 17 | 2021-01-17 | Sunday | -7779.03 | -33323.24 | -46845.53 | 17765.18 | 31287.47 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 18 | 2021-01-18 | Monday | -8527.54 | -34311.74 | -47961.06 | 17256.65 | 30905.98 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 19 | 2021-01-19 | Tuesday | -8586.40 | -34605.88 | -48379.77 | 17433.09 | 31206.97 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 20 | 2021-01-20 | Wednesday | -8622.89 | -34878.94 | -48778.05 | 17633.15 | 31532.26 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 21 | 2021-01-21 | Thursday | -9304.22 | -35792.71 | -49814.87 | 17184.28 | 31206.44 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 22 | 2021-01-22 | Friday | -9293.41 | -36012.33 | -50156.47 | 17425.51 | 31569.65 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 23 | 2021-01-23 | Saturday | -9327.44 | -36275.58 | -50541.06 | 17620.70 | 31886.19 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 24 | 2021-01-24 | Sunday | -10075.95 | -37244.59 | -51626.80 | 17092.69 | 31474.90 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 25 | 2021-01-25 | Monday | -10134.81 | -37519.86 | -52016.63 | 17250.25 | 31747.02 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 26 | 2021-01-26 | Tuesday | -10171.30 | -37774.23 | -52386.34 | 17431.63 | 32043.74 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 27 | 2021-01-27 | Wednesday | -10852.62 | -38669.85 | -53395.40 | 16964.60 | 31690.15 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 28 | 2021-01-28 | Thursday | -10841.82 | -38871.70 | -53709.82 | 17188.06 | 32026.19 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 29 | 2021-01-29 | Friday | -10875.84 | -39117.50 | -54067.73 | 17365.81 | 32316.04 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 30 | 2021-01-30 | Saturday | -11624.36 | -40069.84 | -55127.96 | 16821.12 | 31879.25 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 31 | 2021-01-31 | Sunday | -11683.21 | -40328.88 | -55492.99 | 16962.46 | 32126.56 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 32 | 2021-02-01 | Monday | -11719.71 | -40567.16 | -55838.08 | 17127.74 | 32398.66 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 33 | 2021-02-02 | Tuesday | -12401.03 | -41447.09 | -56823.15 | 16645.03 | 32021.09 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 34 | 2021-02-03 | Wednesday | -12390.23 | -41633.55 | -57114.03 | 16853.10 | 32333.58 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 35 | 2021-02-04 | Thursday | -12424.25 | -41864.19 | -57448.76 | 17015.69 | 32600.26 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 36 | 2021-02-05 | Friday | -13172.77 | -42802.00 | -58486.77 | 16456.47 | 32141.24 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 37 | 2021-02-06 | Saturday | -13231.62 | -43046.89 | -58830.13 | 16583.64 | 32366.89 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 38 | 2021-02-07 | Sunday | -13268.12 | -43271.07 | -59153.68 | 16734.84 | 32617.45 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 39 | 2021-02-08 | Monday | -13949.44 | -44137.25 | -60117.71 | 16238.37 | 32218.83 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 40 | 2021-02-09 | Tuesday | -13938.63 | -44310.17 | -60387.89 | 16432.90 | 32510.63 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 41 | 2021-02-10 | Wednesday | -13972.66 | -44527.46 | -60702.20 | 16582.14 | 32756.88 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 42 | 2021-02-11 | Thursday | -14721.17 | -45452.44 | -61720.59 | 16010.09 | 32278.24 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 43 | 2021-02-12 | Friday | -14780.03 | -45684.79 | -62044.79 | 16124.74 | 32484.73 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 44 | 2021-02-13 | Saturday | -14816.52 | -45896.49 | -62349.24 | 16263.45 | 32716.19 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 45 | 2021-02-14 | Sunday | -15497.85 | -46750.45 | -63294.58 | 15754.76 | 32298.89 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
plot(forecasting_tbats)
x1_test <- ts(testing_data, start =(rows-validation_data_days+1) )
lines(x1_test, col='red',lwd=2)

graph2<-autoplot(forecasting_tbats,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab)
graph2

## Holt's linear trend
# Data Modeling
data_series<-ts(training_data)
model_holt<-holt(data_series,h=N_forecasting_days+validation_data_days,lambda = "auto")
accuracy(model_holt) # accuracy on training data
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set -44.51646 2374.02 1302.501 -Inf Inf 1.143874 0.3680745
# Print Model Parameters
summary(model_holt$model)
## Holt's method
##
## Call:
## holt(y = data_series, h = N_forecasting_days + validation_data_days,
##
## Call:
## lambda = "auto")
##
## Box-Cox transformation: lambda= 0.1466
##
## Smoothing parameters:
## alpha = 0.6755
## beta = 1e-04
##
## Initial states:
## l = -6.777
## b = 0.07
##
## sigma: 1.485
##
## AIC AICc BIC
## 2211.054 2211.237 2230.110
##
## Training set error measures:
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set -44.51646 2374.02 1302.501 -Inf Inf 1.143874 0.3680745
# Testing Data Evaluation
forecasting_holt <- predict(model_holt, h=N_forecasting_days+validation_data_days,lambda = "auto")
validation_forecast<-head(forecasting_holt$mean,validation_data_days)
MAPE_Per_Day<-round( abs(((testing_data-validation_forecast)/testing_data)*100) ,3)
paste ("MAPE % For ",validation_data_days,frequency,"by using holt Model for ==> ",y_lab, sep=" ")
## [1] "MAPE % For 30 days by using holt Model for ==> Daily Covid 19 Infection cases in Spain"
MAPE_Mean_All.Holt_Model<-round(mean(MAPE_Per_Day),3)
MAPE_Mean_All.Holt<-paste(round(mean(MAPE_Per_Day),3),"% MAPE ",validation_data_days,frequency,y_lab,sep=" ")
MAPE_holt<-paste(round(MAPE_Per_Day,3),"%")
MAPE_holt_Model<-paste(MAPE_Per_Day ,"%")
paste (" MAPE that's Error of Forecasting for ",validation_data_days," days in holt Model for ==> ",y_lab, sep=" ")
## [1] " MAPE that's Error of Forecasting for 30 days in holt Model for ==> Daily Covid 19 Infection cases in Spain"
paste(MAPE_Mean_All.Holt,"%")
## [1] "38.556 % MAPE 30 days Daily Covid 19 Infection cases in Spain %"
paste ("MAPE that's Error of Forecasting day by day for ",validation_data_days," days in holt Model for ==> ",y_lab, sep=" ")
## [1] "MAPE that's Error of Forecasting day by day for 30 days in holt Model for ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(date_holt=validation_dates,validation_data_by_name,actual_data=testing_data,forecasting_holt=validation_forecast,MAPE_holt_Model)), type = "rest")
##
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | | date_holt | validation_data_by_name | actual_data | forecasting_holt | MAPE_holt_Model |
## +====+============+=========================+=============+==================+=================+
## | 1 | 2020-12-02 | Wednesday | 7369.00 | 4392.88 | 40.387 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 2 | 2020-12-03 | Thursday | 9481.00 | 4483.45 | 52.711 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 3 | 2020-12-04 | Friday | 8800.00 | 4575.61 | 48.004 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 4 | 2020-12-05 | Saturday | 8090.00 | 4669.38 | 42.282 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 5 | 2020-12-06 | Sunday | 8352.00 | 4764.79 | 42.95 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 6 | 2020-12-07 | Monday | 4956.00 | 4861.85 | 1.9 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 7 | 2020-12-08 | Tuesday | 3237.00 | 4960.60 | 53.247 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 8 | 2020-12-09 | Wednesday | 5179.00 | 5061.05 | 2.277 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 9 | 2020-12-10 | Thursday | 4014.00 | 5163.23 | 28.631 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 10 | 2020-12-11 | Friday | 8341.00 | 5267.17 | 36.852 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 11 | 2020-12-12 | Saturday | 10688.00 | 5372.89 | 49.73 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 12 | 2020-12-13 | Sunday | 11272.00 | 5480.42 | 51.38 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 13 | 2020-12-14 | Monday | 6557.00 | 5589.77 | 14.751 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 14 | 2020-12-15 | Tuesday | 4235.00 | 5700.99 | 34.616 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 15 | 2020-12-16 | Wednesday | 9803.00 | 5814.08 | 40.691 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 16 | 2020-12-17 | Thursday | 12112.00 | 5929.09 | 51.048 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 17 | 2020-12-18 | Friday | 11681.00 | 6046.03 | 48.241 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 18 | 2020-12-19 | Saturday | 10892.00 | 6164.93 | 43.399 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 19 | 2020-12-20 | Sunday | 12183.00 | 6285.82 | 48.405 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 20 | 2020-12-21 | Monday | 6898.00 | 6408.73 | 7.093 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 21 | 2020-12-22 | Tuesday | 4335.00 | 6533.69 | 50.719 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 22 | 2020-12-23 | Wednesday | 10932.00 | 6660.72 | 39.071 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 23 | 2020-12-24 | Thursday | 13322.00 | 6789.85 | 49.033 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 24 | 2020-12-25 | Friday | 14387.00 | 6921.11 | 51.893 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 25 | 2020-12-26 | Saturday | 9893.00 | 7054.53 | 28.692 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 26 | 2020-12-27 | Sunday | 4833.00 | 7190.14 | 48.772 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 27 | 2020-12-28 | Monday | 6293.00 | 7327.96 | 16.446 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 28 | 2020-12-29 | Tuesday | 5949.00 | 7468.04 | 25.534 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 29 | 2020-12-30 | Wednesday | 15009.00 | 7610.39 | 49.294 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
## | 30 | 2020-12-31 | Thursday | 18741.00 | 7755.06 | 58.62 % |
## +----+------------+-------------------------+-------------+------------------+-----------------+
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_holt=tail(forecasting_holt$mean,N_forecasting_days),Lower=tail(forecasting_holt$lower,N_forecasting_days),Upper=tail(forecasting_holt$upper,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | | FD | forecating_date | forecasting_by_holt | Lower.80. | Lower.95. | Upper.80. | Upper.95. |
## +====+============+=================+=====================+===========+===========+===========+===========+
## | 1 | 2021-01-01 | Friday | 7902.06 | 782.77 | 152.00 | 44288.74 | 94897.20 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 2 | 2021-01-02 | Saturday | 8051.43 | 770.10 | 144.64 | 46006.32 | 99278.94 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 3 | 2021-01-03 | Sunday | 8203.21 | 758.08 | 137.76 | 47764.01 | 103783.48 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 4 | 2021-01-04 | Monday | 8357.43 | 746.67 | 131.32 | 49562.49 | 108412.94 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 5 | 2021-01-05 | Tuesday | 8514.11 | 735.83 | 125.28 | 51402.42 | 113169.47 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 6 | 2021-01-06 | Wednesday | 8673.29 | 725.53 | 119.61 | 53284.51 | 118055.25 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 7 | 2021-01-07 | Thursday | 8835.00 | 715.74 | 114.29 | 55209.45 | 123072.45 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 8 | 2021-01-08 | Friday | 8999.28 | 706.43 | 109.28 | 57177.92 | 128223.29 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 9 | 2021-01-09 | Saturday | 9166.16 | 697.56 | 104.57 | 59190.62 | 133509.98 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 10 | 2021-01-10 | Sunday | 9335.67 | 689.13 | 100.12 | 61248.27 | 138934.76 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 11 | 2021-01-11 | Monday | 9507.85 | 681.09 | 95.93 | 63351.56 | 144499.89 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 12 | 2021-01-12 | Tuesday | 9682.73 | 673.44 | 91.98 | 65501.21 | 150207.67 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 13 | 2021-01-13 | Wednesday | 9860.35 | 666.14 | 88.24 | 67697.94 | 156060.37 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 14 | 2021-01-14 | Thursday | 10040.75 | 659.19 | 84.71 | 69942.47 | 162060.33 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 15 | 2021-01-15 | Friday | 10223.95 | 652.57 | 81.37 | 72235.53 | 168209.89 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 16 | 2021-01-16 | Saturday | 10410.00 | 646.26 | 78.20 | 74577.85 | 174511.40 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 17 | 2021-01-17 | Sunday | 10598.93 | 640.24 | 75.20 | 76970.18 | 180967.26 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 18 | 2021-01-18 | Monday | 10790.78 | 634.51 | 72.35 | 79413.26 | 187579.86 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 19 | 2021-01-19 | Tuesday | 10985.58 | 629.04 | 69.65 | 81907.84 | 194351.63 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 20 | 2021-01-20 | Wednesday | 11183.38 | 623.83 | 67.09 | 84454.68 | 201285.01 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 21 | 2021-01-21 | Thursday | 11384.20 | 618.87 | 64.65 | 87054.54 | 208382.48 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 22 | 2021-01-22 | Friday | 11588.10 | 614.14 | 62.33 | 89708.20 | 215646.53 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 23 | 2021-01-23 | Saturday | 11795.11 | 609.64 | 60.13 | 92416.44 | 223079.66 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 24 | 2021-01-24 | Sunday | 12005.26 | 605.35 | 58.03 | 95180.03 | 230684.42 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 25 | 2021-01-25 | Monday | 12218.60 | 601.28 | 56.03 | 97999.77 | 238463.36 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 26 | 2021-01-26 | Tuesday | 12435.17 | 597.40 | 54.12 | 100876.46 | 246419.05 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 27 | 2021-01-27 | Wednesday | 12655.00 | 593.71 | 52.31 | 103810.90 | 254554.11 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 28 | 2021-01-28 | Thursday | 12878.15 | 590.21 | 50.57 | 106803.90 | 262871.15 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 29 | 2021-01-29 | Friday | 13104.64 | 586.89 | 48.92 | 109856.28 | 271372.83 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 30 | 2021-01-30 | Saturday | 13334.52 | 583.74 | 47.34 | 112968.86 | 280061.81 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 31 | 2021-01-31 | Sunday | 13567.84 | 580.75 | 45.83 | 116142.48 | 288940.79 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 32 | 2021-02-01 | Monday | 13804.63 | 577.93 | 44.38 | 119377.98 | 298012.49 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 33 | 2021-02-02 | Tuesday | 14044.94 | 575.26 | 43.00 | 122676.20 | 307279.65 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 34 | 2021-02-03 | Wednesday | 14288.80 | 572.74 | 41.68 | 126037.99 | 316745.04 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 35 | 2021-02-04 | Thursday | 14536.28 | 570.36 | 40.42 | 129464.23 | 326411.44 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 36 | 2021-02-05 | Friday | 14787.40 | 568.13 | 39.20 | 132955.77 | 336281.66 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 37 | 2021-02-06 | Saturday | 15042.21 | 566.03 | 38.04 | 136513.49 | 346358.55 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 38 | 2021-02-07 | Sunday | 15300.76 | 564.06 | 36.93 | 140138.28 | 356644.96 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 39 | 2021-02-08 | Monday | 15563.10 | 562.22 | 35.86 | 143831.03 | 367143.79 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 40 | 2021-02-09 | Tuesday | 15829.26 | 560.50 | 34.84 | 147592.63 | 377857.93 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 41 | 2021-02-10 | Wednesday | 16099.30 | 558.91 | 33.86 | 151424.00 | 388790.33 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 42 | 2021-02-11 | Thursday | 16373.26 | 557.43 | 32.92 | 155326.04 | 399943.94 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 43 | 2021-02-12 | Friday | 16651.19 | 556.07 | 32.01 | 159299.68 | 411321.75 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 44 | 2021-02-13 | Saturday | 16933.14 | 554.81 | 31.14 | 163345.85 | 422926.76 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 45 | 2021-02-14 | Sunday | 17219.15 | 553.67 | 30.30 | 167465.49 | 434762.01 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
plot(forecasting_holt)
x1_test <- ts(testing_data, start =(rows-validation_data_days+1) )
lines(x1_test, col='red',lwd=2)

graph3<-autoplot(forecasting_holt,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab)
graph3

#Auto arima model
##################
require(tseries) # need to install tseries tj test Stationarity in time series
paste ("tests For Check Stationarity in series ==> ",y_lab, sep=" ")
## [1] "tests For Check Stationarity in series ==> Daily Covid 19 Infection cases in Spain"
kpss.test(data_series) # applay kpss test
## Warning in kpss.test(data_series): p-value smaller than printed p-value
##
## KPSS Test for Level Stationarity
##
## data: data_series
## KPSS Level = 3.5227, Truncation lag parameter = 5, p-value = 0.01
pp.test(data_series) # applay pp test
##
## Phillips-Perron Unit Root Test
##
## data: data_series
## Dickey-Fuller Z(alpha) = -22.974, Truncation lag parameter = 5, p-value
## = 0.03731
## alternative hypothesis: stationary
adf.test(data_series) # applay adf test
##
## Augmented Dickey-Fuller Test
##
## data: data_series
## Dickey-Fuller = -0.661, Lag order = 6, p-value = 0.9734
## alternative hypothesis: stationary
ndiffs(data_series) # Doing first diffrencing on data
## [1] 1
#Taking the first difference
diff1_x1<-diff(data_series)
autoplot(diff1_x1, xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab,main = "1nd differenced series")

##Testing the stationary of the first differenced series
paste ("tests For Check Stationarity in series after taking first differences in ==> ",y_lab, sep=" ")
## [1] "tests For Check Stationarity in series after taking first differences in ==> Daily Covid 19 Infection cases in Spain"
kpss.test(diff1_x1) # applay kpss test after taking first differences
## Warning in kpss.test(diff1_x1): p-value greater than printed p-value
##
## KPSS Test for Level Stationarity
##
## data: diff1_x1
## KPSS Level = 0.099961, Truncation lag parameter = 5, p-value = 0.1
pp.test(diff1_x1) # applay pp test after taking first differences
## Warning in pp.test(diff1_x1): p-value smaller than printed p-value
##
## Phillips-Perron Unit Root Test
##
## data: diff1_x1
## Dickey-Fuller Z(alpha) = -140.39, Truncation lag parameter = 5, p-value
## = 0.01
## alternative hypothesis: stationary
adf.test(diff1_x1) # applay adf test after taking first differences
## Warning in adf.test(diff1_x1): p-value smaller than printed p-value
##
## Augmented Dickey-Fuller Test
##
## data: diff1_x1
## Dickey-Fuller = -4.2841, Lag order = 6, p-value = 0.01
## alternative hypothesis: stationary
#Taking the second difference
diff2_x1=diff(diff1_x1)
autoplot(diff2_x1, xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab ,main = "2nd differenced series")

##Testing the stationary of the first differenced series
paste ("tests For Check Stationarity in series after taking Second differences in",y_lab, sep=" ")
## [1] "tests For Check Stationarity in series after taking Second differences in Daily Covid 19 Infection cases in Spain"
kpss.test(diff2_x1) # applay kpss test after taking Second differences
## Warning in kpss.test(diff2_x1): p-value greater than printed p-value
##
## KPSS Test for Level Stationarity
##
## data: diff2_x1
## KPSS Level = 0.015433, Truncation lag parameter = 5, p-value = 0.1
pp.test(diff2_x1) # applay pp test after taking Second differences
## Warning in pp.test(diff2_x1): p-value smaller than printed p-value
##
## Phillips-Perron Unit Root Test
##
## data: diff2_x1
## Dickey-Fuller Z(alpha) = -237.1, Truncation lag parameter = 5, p-value
## = 0.01
## alternative hypothesis: stationary
adf.test(diff2_x1) # applay adf test after taking Second differences
## Warning in adf.test(diff2_x1): p-value smaller than printed p-value
##
## Augmented Dickey-Fuller Test
##
## data: diff2_x1
## Dickey-Fuller = -18.704, Lag order = 6, p-value = 0.01
## alternative hypothesis: stationary
####Fitting an ARIMA Model
#1. Using auto arima function
model1 <- auto.arima(data_series,stepwise=FALSE, approximation=FALSE, trace=T, test = c("kpss", "adf", "pp")) #applaying auto arima
##
## ARIMA(0,1,0) : 6067.023
## ARIMA(0,1,0) with drift : 6069.04
## ARIMA(0,1,1) : 6022.269
## ARIMA(0,1,1) with drift : 6024.302
## ARIMA(0,1,2) : 5941.508
## ARIMA(0,1,2) with drift : 5943.275
## ARIMA(0,1,3) : 5938.449
## ARIMA(0,1,3) with drift : 5940.035
## ARIMA(0,1,4) : 5938.317
## ARIMA(0,1,4) with drift : 5940.03
## ARIMA(0,1,5) : 5822.569
## ARIMA(0,1,5) with drift : 5824.614
## ARIMA(1,1,0) : 6054.385
## ARIMA(1,1,0) with drift : 6056.418
## ARIMA(1,1,1) : 5996.444
## ARIMA(1,1,1) with drift : 5998.486
## ARIMA(1,1,2) : 5938.865
## ARIMA(1,1,2) with drift : 5940.595
## ARIMA(1,1,3) : 5940.857
## ARIMA(1,1,3) with drift : 5942.6
## ARIMA(1,1,4) : 5908.634
## ARIMA(1,1,4) with drift : 5910.163
## ARIMA(2,1,0) : 5981.716
## ARIMA(2,1,0) with drift : 5983.733
## ARIMA(2,1,1) : 5931.167
## ARIMA(2,1,1) with drift : 5932.875
## ARIMA(2,1,2) : 5933.704
## ARIMA(2,1,2) with drift : 5935.439
## ARIMA(2,1,3) : 5911.856
## ARIMA(2,1,3) with drift : 5913.63
## ARIMA(3,1,0) : 5981.296
## ARIMA(3,1,0) with drift : 5983.316
## ARIMA(3,1,1) : 5932.711
## ARIMA(3,1,1) with drift : 5934.425
## ARIMA(3,1,2) : 5909.303
## ARIMA(3,1,2) with drift : 5911.032
## ARIMA(4,1,0) : 5904.752
## ARIMA(4,1,0) with drift : 5906.656
## ARIMA(4,1,1) : 5848.498
## ARIMA(4,1,1) with drift : 5849.991
## ARIMA(5,1,0) : 5763.774
## ARIMA(5,1,0) with drift : 5765.005
##
##
##
## Best model: ARIMA(5,1,0)
model1 # show the result of autoarima
## Series: data_series
## ARIMA(5,1,0)
##
## Coefficients:
## ar1 ar2 ar3 ar4 ar5
## -0.0545 -0.6058 -0.3360 -0.3312 -0.5919
## s.e. 0.0440 0.0403 0.0487 0.0402 0.0439
##
## sigma^2 estimated as 1863880: log likelihood=-2875.76
## AIC=5763.52 AICc=5763.77 BIC=5786.37
#Make changes in the source of auto arima to run the best model
arima.string <- function (object, padding = FALSE)
{
order <- object$arma[c(1, 6, 2, 3, 7, 4, 5)]
m <- order[7]
result <- paste("ARIMA(", order[1], ",", order[2], ",",
order[3], ")", sep = "")
if (m > 1 && sum(order[4:6]) > 0) {
result <- paste(result, "(", order[4], ",", order[5],
",", order[6], ")[", m, "]", sep = "")
}
if (padding && m > 1 && sum(order[4:6]) == 0) {
result <- paste(result, " ", sep = "")
if (m <= 9) {
result <- paste(result, " ", sep = "")
}
else if (m <= 99) {
result <- paste(result, " ", sep = "")
}
else {
result <- paste(result, " ", sep = "")
}
}
if (!is.null(object$xreg)) {
if (NCOL(object$xreg) == 1 && is.element("drift", names(object$coef))) {
result <- paste(result, "with drift ")
}
else {
result <- paste("Regression with", result, "errors")
}
}
else {
if (is.element("constant", names(object$coef)) || is.element("intercept",
names(object$coef))) {
result <- paste(result, "with non-zero mean")
}
else if (order[2] == 0 && order[5] == 0) {
result <- paste(result, "with zero mean ")
}
else {
result <- paste(result, " ")
}
}
if (!padding) {
result <- gsub("[ ]*$", "", result)
}
return(result)
}
bestmodel <- arima.string(model1, padding = TRUE)
bestmodel <- substring(bestmodel,7,11)
bestmodel <- gsub(" ", "", bestmodel)
bestmodel <- gsub(")", "", bestmodel)
bestmodel <- strsplit(bestmodel, ",")[[1]]
bestmodel <- c(strtoi(bestmodel[1]),strtoi(bestmodel[2]),strtoi(bestmodel[3]))
bestmodel
## [1] 5 1 0
strtoi(bestmodel[3])
## [1] 0
#2. Using ACF and PACF Function
#par(mfrow=c(1,2)) # Code for making two plot in one graph
acf(diff2_x1,xlab = paste ("Time in", frequency ,y_lab , sep=" ") , ylab=y_lab, main=paste("ACF-2nd differenced series ",y_lab, sep=" ",lag.max=20)) # plot ACF "auto correlation function after taking second diffrences

pacf(diff2_x1,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab,main=paste("PACF-2nd differenced series ",y_lab, sep=" ",lag.max=20)) # plot PACF " Partial auto correlation function after taking second diffrences

library(forecast) # install library forecast
x1_model1= arima(data_series, order=c(bestmodel)) # Run Best model of auto arima for forecasting
x1_model1 # Show result of best model of auto arima
##
## Call:
## arima(x = data_series, order = c(bestmodel))
##
## Coefficients:
## ar1 ar2 ar3 ar4 ar5
## -0.0545 -0.6058 -0.3360 -0.3312 -0.5919
## s.e. 0.0440 0.0403 0.0487 0.0402 0.0439
##
## sigma^2 estimated as 1835893: log likelihood = -2875.76, aic = 5763.52
paste ("accuracy of autoarima Model For ==> ",y_lab, sep=" ")
## [1] "accuracy of autoarima Model For ==> Daily Covid 19 Infection cases in Spain"
accuracy(x1_model1) # aacuracy of best model from auto arima
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set 67.92454 1352.922 814.3195 NaN Inf 0.7151461 -0.07642286
x1_model1$x # show result of best model from auto arima
## NULL
checkresiduals(x1_model1,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab) # checkresiduals from best model from using auto arima

##
## Ljung-Box test
##
## data: Residuals from ARIMA(5,1,0)
## Q* = 319, df = 5, p-value < 2.2e-16
##
## Model df: 5. Total lags used: 10
paste("Box-Ljung test , Ljung-Box test For Modelling for ==> ",y_lab, sep=" ")
## [1] "Box-Ljung test , Ljung-Box test For Modelling for ==> Daily Covid 19 Infection cases in Spain"
Box.test(x1_model1$residuals^2, lag=20, type="Ljung-Box") # Do test for resdulas by using Box-Ljung test , Ljung-Box test For Modelling
##
## Box-Ljung test
##
## data: x1_model1$residuals^2
## X-squared = 484.45, df = 20, p-value < 2.2e-16
library(tseries)
jarque.bera.test(x1_model1$residuals) # Do test jarque.bera.test
##
## Jarque Bera Test
##
## data: x1_model1$residuals
## X-squared = 173.54, df = 2, p-value < 2.2e-16
#Actual Vs Fitted
plot(data_series, col='red',lwd=2, main="Actual vs Fitted Plot", xlab='Time in (days)', ylab=y_lab) # plot actual and Fitted model
lines(fitted(x1_model1), col='black')

#Test data
x1_test <- ts(testing_data, start =(rows-validation_data_days+1) ) # make testing data in time series and start from rows-6
forecasting_auto_arima <- forecast(x1_model1, h=N_forecasting_days+validation_data_days)
validation_forecast<-head(forecasting_auto_arima$mean,validation_data_days)
MAPE_Per_Day<-round(abs(((testing_data-validation_forecast)/testing_data)*100) ,3)
paste ("MAPE % For ",validation_data_days,frequency,"by using bats Model for ==> ",y_lab, sep=" ")
## [1] "MAPE % For 30 days by using bats Model for ==> Daily Covid 19 Infection cases in Spain"
MAPE_Mean_All.ARIMA_Model<-round(mean(MAPE_Per_Day),3)
MAPE_Mean_All.ARIMA<-paste(round(mean(MAPE_Per_Day),3),"% MAPE ",validation_data_days,frequency,y_lab,sep=" ")
MAPE_auto_arima<-paste(round(MAPE_Per_Day,3),"%")
MAPE_auto.arima_Model<-paste(MAPE_Per_Day ,"%")
paste (" MAPE that's Error of Forecasting for ",validation_data_days," days in bats Model for ==> ",y_lab, sep=" ")
## [1] " MAPE that's Error of Forecasting for 30 days in bats Model for ==> Daily Covid 19 Infection cases in Spain"
paste(MAPE_Mean_All.ARIMA,"%")
## [1] "28.885 % MAPE 30 days Daily Covid 19 Infection cases in Spain %"
paste ("MAPE that's Error of Forecasting day by day for ",validation_data_days," days in bats Model for ==> ",y_lab, sep=" ")
## [1] "MAPE that's Error of Forecasting day by day for 30 days in bats Model for ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(date_auto.arima=validation_dates,validation_data_by_name,actual_data=testing_data,forecasting_auto.arima=validation_forecast,MAPE_auto.arima_Model)), type = "rest")
##
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | | date_auto.arima | validation_data_by_name | actual_data | forecasting_auto.arima | MAPE_auto.arima_Model |
## +====+=================+=========================+=============+========================+=======================+
## | 1 | 2020-12-02 | Wednesday | 7369.00 | 6743.19 | 8.492 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 2 | 2020-12-03 | Thursday | 9481.00 | 9415.36 | 0.692 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 3 | 2020-12-04 | Friday | 8800.00 | 9247.11 | 5.081 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 4 | 2020-12-05 | Saturday | 8090.00 | 9827.90 | 21.482 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 5 | 2020-12-06 | Sunday | 8352.00 | 9143.71 | 9.479 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 6 | 2020-12-07 | Monday | 4956.00 | 6017.75 | 21.423 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 7 | 2020-12-08 | Tuesday | 3237.00 | 4881.72 | 50.81 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 8 | 2020-12-09 | Wednesday | 5179.00 | 6974.54 | 34.67 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 9 | 2020-12-10 | Thursday | 4014.00 | 8481.77 | 111.305 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 10 | 2020-12-11 | Friday | 8341.00 | 8953.71 | 7.346 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 11 | 2020-12-12 | Saturday | 10688.00 | 9538.15 | 10.758 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 12 | 2020-12-13 | Sunday | 11272.00 | 8693.18 | 22.878 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 13 | 2020-12-14 | Monday | 6557.00 | 6488.72 | 1.041 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 14 | 2020-12-15 | Tuesday | 4235.00 | 5876.07 | 38.75 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 15 | 2020-12-16 | Wednesday | 9803.00 | 7055.98 | 28.022 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 16 | 2020-12-17 | Thursday | 12112.00 | 8037.41 | 33.641 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 17 | 2020-12-18 | Friday | 11681.00 | 8705.18 | 25.476 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 18 | 2020-12-19 | Saturday | 10892.00 | 9185.44 | 15.668 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 19 | 2020-12-20 | Sunday | 12183.00 | 8396.77 | 31.078 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 20 | 2020-12-21 | Monday | 6898.00 | 6901.04 | 0.044 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 21 | 2020-12-22 | Tuesday | 4335.00 | 6496.99 | 49.873 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 22 | 2020-12-23 | Wednesday | 10932.00 | 7135.84 | 34.725 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 23 | 2020-12-24 | Thursday | 13322.00 | 7825.29 | 41.26 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 24 | 2020-12-25 | Friday | 14387.00 | 8498.62 | 40.928 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 25 | 2020-12-26 | Saturday | 9893.00 | 8848.68 | 10.556 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 26 | 2020-12-27 | Sunday | 4833.00 | 8217.58 | 70.031 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 27 | 2020-12-28 | Monday | 6293.00 | 7207.22 | 14.528 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 28 | 2020-12-29 | Tuesday | 5949.00 | 6895.95 | 15.918 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 29 | 2020-12-30 | Wednesday | 15009.00 | 7222.59 | 51.878 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
## | 30 | 2020-12-31 | Thursday | 18741.00 | 7734.66 | 58.729 % |
## +----+-----------------+-------------------------+-------------+------------------------+-----------------------+
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_auto.arima=tail(forecasting_auto_arima$mean,N_forecasting_days),Lower=tail(forecasting_auto_arima$lower,N_forecasting_days),Upper=tail(forecasting_auto_arima$upper,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | | FD | forecating_date | forecasting_by_auto.arima | Lower.80. | Lower.95. | Upper.80. | Upper.95. |
## +====+============+=================+===========================+===========+===========+===========+===========+
## | 1 | 2021-01-01 | Friday | 8321.61 | 3968.76 | 1664.50 | 12674.45 | 14978.71 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 2 | 2021-01-02 | Saturday | 8570.74 | 4180.04 | 1855.74 | 12961.43 | 15285.73 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 3 | 2021-01-03 | Sunday | 8105.56 | 3696.51 | 1362.50 | 12514.61 | 14848.62 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 4 | 2021-01-04 | Monday | 7419.86 | 2994.91 | 652.48 | 11844.81 | 14187.24 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 5 | 2021-01-05 | Tuesday | 7157.88 | 2698.75 | 338.23 | 11617.01 | 13977.53 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 6 | 2021-01-06 | Wednesday | 7313.95 | 2796.23 | 404.70 | 11831.68 | 14223.21 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 7 | 2021-01-07 | Thursday | 7701.16 | 3119.37 | 693.92 | 12282.95 | 14708.40 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 8 | 2021-01-08 | Friday | 8175.95 | 3539.73 | 1085.47 | 12812.17 | 15266.43 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 9 | 2021-01-09 | Saturday | 8355.66 | 3682.41 | 1208.53 | 13028.92 | 15502.79 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 10 | 2021-01-10 | Sunday | 8031.50 | 3336.39 | 850.95 | 12726.60 | 15212.04 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 11 | 2021-01-11 | Monday | 7560.15 | 2844.86 | 348.73 | 12275.45 | 14771.58 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 12 | 2021-01-12 | Tuesday | 7335.43 | 2587.61 | 74.27 | 12083.25 | 14596.59 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 13 | 2021-01-13 | Wednesday | 7401.61 | 2605.85 | 67.13 | 12197.37 | 14736.09 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 14 | 2021-01-14 | Thursday | 7693.51 | 2844.06 | 276.92 | 12542.95 | 15110.10 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 15 | 2021-01-15 | Friday | 8060.98 | 3162.85 | 569.94 | 12959.11 | 15552.03 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 16 | 2021-01-16 | Saturday | 8195.28 | 3261.27 | 649.36 | 13129.29 | 15741.19 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 17 | 2021-01-17 | Sunday | 7978.34 | 3019.81 | 394.92 | 12936.88 | 15561.77 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 18 | 2021-01-18 | Monday | 7649.50 | 2667.82 | 30.68 | 12631.18 | 15268.32 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 19 | 2021-01-19 | Tuesday | 7459.25 | 2446.40 | -207.25 | 12472.11 | 15125.76 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 20 | 2021-01-20 | Wednesday | 7479.76 | 2425.51 | -250.04 | 12534.00 | 15209.56 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 21 | 2021-01-21 | Thursday | 7696.75 | 2595.99 | -104.18 | 12797.50 | 15497.67 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 22 | 2021-01-22 | Friday | 7973.73 | 2829.16 | 105.80 | 13118.29 | 15841.66 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 23 | 2021-01-23 | Saturday | 8077.92 | 2898.73 | 157.03 | 13257.11 | 15998.81 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 24 | 2021-01-24 | Sunday | 7937.35 | 2731.83 | -23.81 | 13142.86 | 15898.50 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 25 | 2021-01-25 | Monday | 7704.82 | 2474.29 | -294.59 | 12935.35 | 15704.23 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 26 | 2021-01-26 | Tuesday | 7547.49 | 2286.82 | -498.01 | 12808.16 | 15592.98 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 27 | 2021-01-27 | Wednesday | 7545.72 | 2247.94 | -556.54 | 12843.50 | 15647.98 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 28 | 2021-01-28 | Thursday | 7704.15 | 2365.05 | -461.30 | 13043.24 | 15869.59 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 29 | 2021-01-29 | Friday | 7909.66 | 2530.72 | -316.71 | 13288.59 | 16136.03 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 30 | 2021-01-30 | Saturday | 7992.80 | 2580.48 | -284.63 | 13405.12 | 16270.23 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 31 | 2021-01-31 | Sunday | 7904.24 | 2464.56 | -415.04 | 13343.93 | 16223.53 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 32 | 2021-02-01 | Monday | 7738.23 | 2272.44 | -620.97 | 13204.01 | 16097.42 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 33 | 2021-02-02 | Tuesday | 7611.16 | 2116.07 | -792.85 | 13106.25 | 16015.17 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 34 | 2021-02-03 | Wednesday | 7599.24 | 2069.99 | -857.02 | 13128.49 | 16055.50 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 35 | 2021-02-04 | Thursday | 7712.77 | 2146.07 | -800.76 | 13279.48 | 16226.31 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 36 | 2021-02-05 | Friday | 7863.90 | 2260.54 | -705.69 | 13467.25 | 16433.49 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 37 | 2021-02-06 | Saturday | 7931.23 | 2295.70 | -687.57 | 13566.76 | 16550.03 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 38 | 2021-02-07 | Sunday | 7877.01 | 2213.65 | -784.35 | 13540.37 | 16538.37 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 39 | 2021-02-08 | Monday | 7757.85 | 2067.87 | -944.23 | 13447.84 | 16459.94 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 40 | 2021-02-09 | Tuesday | 7657.32 | 1938.74 | -1088.50 | 13375.91 | 16403.15 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 41 | 2021-02-10 | Wednesday | 7641.46 | 1890.87 | -1153.32 | 13392.06 | 16436.24 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 42 | 2021-02-11 | Thursday | 7721.37 | 1936.26 | -1126.19 | 13506.48 | 16568.93 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 43 | 2021-02-12 | Friday | 7831.96 | 2012.75 | -1067.75 | 13651.16 | 16731.66 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 44 | 2021-02-13 | Saturday | 7886.67 | 2036.44 | -1060.49 | 13736.90 | 16833.82 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 45 | 2021-02-14 | Sunday | 7854.60 | 1976.49 | -1135.19 | 13732.70 | 16844.38 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
plot(forecasting_auto_arima)
x1_test <- ts(testing_data, start =(rows-validation_data_days+1) )
lines(x1_test, col='red',lwd=2)

graph4<-autoplot(forecasting_auto_arima,xlab = paste ("Time in", frequency ,y_lab , sep=" "), ylab=y_lab)
graph4

MAPE_Mean_All.ARIMA
## [1] "28.885 % MAPE 30 days Daily Covid 19 Infection cases in Spain"
# Table for MAPE For counry
best_recommended_model <- min(MAPE_Mean_All_NNAR,MAPE_Mean_All.bats_Model,MAPE_Mean_All.TBATS_Model,MAPE_Mean_All.Holt_Model,MAPE_Mean_All.ARIMA_Model)
paste("System Choose Least Error ==> ( MAPE %) of Forecasting by using bats model and BATS Model, Holt's Linear Models , and autoarima for ==> ", y_lab , sep=" ")
## [1] "System Choose Least Error ==> ( MAPE %) of Forecasting by using bats model and BATS Model, Holt's Linear Models , and autoarima for ==> Daily Covid 19 Infection cases in Spain"
best_recommended_model
## [1] 22.807
x1<-if(best_recommended_model >= MAPE_Mean_All.bats_Model) {paste("BATS Model")}
x2<-if(best_recommended_model >= MAPE_Mean_All.TBATS_Model) {paste("TBATS Model")}
x3<-if(best_recommended_model >= MAPE_Mean_All.Holt_Model) {paste("Holt Model")}
x4<-if(best_recommended_model >= MAPE_Mean_All.ARIMA_Model) {paste("ARIMA Model")}
x5<-if(best_recommended_model >= MAPE_Mean_All_NNAR) {paste("NNAR Model")}
panderOptions('table.split.table', Inf)
paste("Forecasting by using BATS Model ==> ", y_lab , sep=" ")
## [1] "Forecasting by using BATS Model ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_bats=tail(forecasting_bats$mean,N_forecasting_days),lower=tail(forecasting_bats$lower,N_forecasting_days),Upper=tail(forecasting_bats$lower,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | | FD | forecating_date | forecasting_by_bats | lower.80. | lower.95. | Upper.80. | Upper.95. |
## +====+============+=================+=====================+===========+===========+===========+===========+
## | 1 | 2021-01-01 | Friday | -4528.39 | -16196.19 | -22372.74 | -16196.19 | -22372.74 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 2 | 2021-01-02 | Saturday | -5277.60 | -17360.47 | -23756.76 | -17360.47 | -23756.76 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 3 | 2021-01-03 | Sunday | -6656.96 | -19117.30 | -25713.40 | -19117.30 | -25713.40 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 4 | 2021-01-04 | Monday | -8109.47 | -20968.76 | -27776.06 | -20968.76 | -27776.06 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 5 | 2021-01-05 | Tuesday | -8447.08 | -21809.27 | -28882.79 | -21809.27 | -28882.79 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 6 | 2021-01-06 | Wednesday | -7746.32 | -21707.52 | -29098.13 | -21707.52 | -29098.13 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 7 | 2021-01-07 | Thursday | -7216.70 | -21761.65 | -29461.29 | -21761.65 | -29461.29 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 8 | 2021-01-08 | Friday | -7425.47 | -22485.91 | -30458.43 | -22485.91 | -30458.43 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 9 | 2021-01-09 | Saturday | -8267.25 | -23787.80 | -32003.88 | -23787.80 | -32003.88 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 10 | 2021-01-10 | Sunday | -9615.26 | -25571.03 | -34017.51 | -25571.03 | -34017.51 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 11 | 2021-01-11 | Monday | -10843.43 | -27263.33 | -35955.49 | -27263.33 | -35955.49 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 12 | 2021-01-12 | Tuesday | -11090.05 | -28062.57 | -37047.28 | -28062.57 | -37047.28 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 13 | 2021-01-13 | Wednesday | -10513.78 | -28109.11 | -37423.51 | -28109.11 | -37423.51 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 14 | 2021-01-14 | Thursday | -10087.94 | -28294.08 | -37931.82 | -28294.08 | -37931.82 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 15 | 2021-01-15 | Friday | -10343.60 | -29102.02 | -39032.12 | -29102.02 | -39032.12 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 16 | 2021-01-16 | Saturday | -11242.12 | -30504.46 | -40701.33 | -30504.46 | -40701.33 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 17 | 2021-01-17 | Sunday | -12531.51 | -32281.03 | -42735.80 | -32281.03 | -42735.80 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 18 | 2021-01-18 | Monday | -13582.82 | -33853.41 | -44584.01 | -33853.41 | -44584.01 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 19 | 2021-01-19 | Tuesday | -13763.78 | -34629.50 | -45675.14 | -34629.50 | -45675.14 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 20 | 2021-01-20 | Wednesday | -13285.63 | -34800.32 | -46189.50 | -34800.32 | -46189.50 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 21 | 2021-01-21 | Thursday | -12959.48 | -35110.73 | -46836.90 | -35110.73 | -46836.90 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 22 | 2021-01-22 | Friday | -13272.37 | -36010.49 | -48047.32 | -36010.49 | -48047.32 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 23 | 2021-01-23 | Saturday | -14200.45 | -37483.35 | -49808.57 | -37483.35 | -49808.57 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 24 | 2021-01-24 | Sunday | -15418.53 | -39237.14 | -51845.95 | -39237.14 | -51845.95 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 25 | 2021-01-25 | Monday | -16326.60 | -40715.77 | -53626.62 | -40715.77 | -53626.62 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 26 | 2021-01-26 | Tuesday | -16461.00 | -41484.02 | -54730.40 | -41484.02 | -54730.40 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 27 | 2021-01-27 | Wednesday | -16064.62 | -41762.45 | -55366.06 | -41762.45 | -55366.06 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 28 | 2021-01-28 | Thursday | -15833.90 | -42194.23 | -56148.54 | -42194.23 | -56148.54 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 29 | 2021-01-29 | Friday | -16204.32 | -43183.76 | -57465.81 | -43183.76 | -57465.81 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 30 | 2021-01-30 | Saturday | -17142.88 | -44706.31 | -59297.51 | -44706.31 | -59297.51 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 31 | 2021-01-31 | Sunday | -18284.12 | -46427.90 | -61326.32 | -46427.90 | -61326.32 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 32 | 2021-02-01 | Monday | -19074.79 | -47833.76 | -63057.83 | -47833.76 | -63057.83 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 33 | 2021-02-02 | Tuesday | -19176.62 | -48604.56 | -64182.76 | -48604.56 | -64182.76 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 34 | 2021-02-03 | Wednesday | -18852.52 | -48981.17 | -64930.31 | -48981.17 | -64930.31 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 35 | 2021-02-04 | Thursday | -18711.43 | -49527.94 | -65841.21 | -49527.94 | -65841.21 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 36 | 2021-02-05 | Friday | -19135.25 | -50602.00 | -67259.50 | -50602.00 | -67259.50 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 37 | 2021-02-06 | Saturday | -20070.14 | -52158.08 | -69144.41 | -52158.08 | -69144.41 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 38 | 2021-02-07 | Sunday | -21134.04 | -53844.04 | -71159.67 | -53844.04 | -71159.67 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 39 | 2021-02-08 | Monday | -21827.16 | -55192.75 | -72855.43 | -55192.75 | -72855.43 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 40 | 2021-02-09 | Tuesday | -21907.73 | -55975.00 | -74009.13 | -55975.00 | -74009.13 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 41 | 2021-02-10 | Wednesday | -21649.62 | -56442.93 | -74861.39 | -56442.93 | -74861.39 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 42 | 2021-02-11 | Thursday | -21591.84 | -57098.21 | -75894.15 | -57098.21 | -75894.15 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 43 | 2021-02-12 | Friday | -22062.32 | -58248.93 | -77404.96 | -58248.93 | -77404.96 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 44 | 2021-02-13 | Saturday | -22983.56 | -59826.98 | -79330.71 | -59826.98 | -79330.71 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 45 | 2021-02-14 | Sunday | -23972.13 | -61476.53 | -81330.16 | -61476.53 | -81330.16 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
paste("Forecasting by using TBATS Model ==> ", y_lab , sep=" ")
## [1] "Forecasting by using TBATS Model ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_TBATS=tail(forecasting_tbats$mean,N_forecasting_days),Lower=tail(forecasting_tbats$lower,N_forecasting_days),Upper=tail(forecasting_tbats$upper,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | | FD | forecating_date | forecasting_by_TBATS | Lower.80. | Lower.95. | Upper.80. | Upper.95. |
## +====+============+=================+======================+===========+===========+===========+===========+
## | 1 | 2021-01-01 | Friday | -3941.18 | -25014.80 | -36170.51 | 17132.45 | 28288.15 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 2 | 2021-01-02 | Saturday | -3977.67 | -25370.61 | -36695.35 | 17415.27 | 28740.01 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 3 | 2021-01-03 | Sunday | -4658.99 | -26364.00 | -37853.93 | 17046.01 | 28535.95 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 4 | 2021-01-04 | Monday | -4648.19 | -26660.83 | -38313.62 | 17364.46 | 29017.25 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 5 | 2021-01-05 | Tuesday | -4682.21 | -26999.22 | -38813.14 | 17634.80 | 29448.71 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 6 | 2021-01-06 | Wednesday | -5430.73 | -28039.47 | -40007.82 | 17178.02 | 29146.36 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 7 | 2021-01-07 | Thursday | -5489.58 | -28383.44 | -40502.71 | 17404.27 | 29523.54 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 8 | 2021-01-08 | Friday | -5526.08 | -28705.48 | -40975.91 | 17653.32 | 29923.76 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 9 | 2021-01-09 | Saturday | -6207.40 | -29666.55 | -42085.07 | 17251.75 | 29670.27 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 10 | 2021-01-10 | Sunday | -6196.60 | -29932.19 | -42497.05 | 17539.00 | 30103.86 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 11 | 2021-01-11 | Monday | -6230.62 | -30240.36 | -42950.35 | 17779.12 | 30489.11 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 12 | 2021-01-12 | Tuesday | -6979.14 | -31252.10 | -44101.43 | 17293.83 | 30143.16 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 13 | 2021-01-13 | Wednesday | -7037.99 | -31568.68 | -44554.45 | 17492.70 | 30478.47 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 14 | 2021-01-14 | Thursday | -7074.49 | -31863.86 | -44986.56 | 17714.89 | 30837.59 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 15 | 2021-01-15 | Friday | -7755.81 | -32799.04 | -46056.13 | 17287.43 | 30544.52 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 16 | 2021-01-16 | Saturday | -7745.00 | -33039.55 | -46429.68 | 17549.55 | 30939.67 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 17 | 2021-01-17 | Sunday | -7779.03 | -33323.24 | -46845.53 | 17765.18 | 31287.47 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 18 | 2021-01-18 | Monday | -8527.54 | -34311.74 | -47961.06 | 17256.65 | 30905.98 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 19 | 2021-01-19 | Tuesday | -8586.40 | -34605.88 | -48379.77 | 17433.09 | 31206.97 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 20 | 2021-01-20 | Wednesday | -8622.89 | -34878.94 | -48778.05 | 17633.15 | 31532.26 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 21 | 2021-01-21 | Thursday | -9304.22 | -35792.71 | -49814.87 | 17184.28 | 31206.44 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 22 | 2021-01-22 | Friday | -9293.41 | -36012.33 | -50156.47 | 17425.51 | 31569.65 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 23 | 2021-01-23 | Saturday | -9327.44 | -36275.58 | -50541.06 | 17620.70 | 31886.19 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 24 | 2021-01-24 | Sunday | -10075.95 | -37244.59 | -51626.80 | 17092.69 | 31474.90 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 25 | 2021-01-25 | Monday | -10134.81 | -37519.86 | -52016.63 | 17250.25 | 31747.02 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 26 | 2021-01-26 | Tuesday | -10171.30 | -37774.23 | -52386.34 | 17431.63 | 32043.74 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 27 | 2021-01-27 | Wednesday | -10852.62 | -38669.85 | -53395.40 | 16964.60 | 31690.15 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 28 | 2021-01-28 | Thursday | -10841.82 | -38871.70 | -53709.82 | 17188.06 | 32026.19 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 29 | 2021-01-29 | Friday | -10875.84 | -39117.50 | -54067.73 | 17365.81 | 32316.04 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 30 | 2021-01-30 | Saturday | -11624.36 | -40069.84 | -55127.96 | 16821.12 | 31879.25 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 31 | 2021-01-31 | Sunday | -11683.21 | -40328.88 | -55492.99 | 16962.46 | 32126.56 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 32 | 2021-02-01 | Monday | -11719.71 | -40567.16 | -55838.08 | 17127.74 | 32398.66 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 33 | 2021-02-02 | Tuesday | -12401.03 | -41447.09 | -56823.15 | 16645.03 | 32021.09 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 34 | 2021-02-03 | Wednesday | -12390.23 | -41633.55 | -57114.03 | 16853.10 | 32333.58 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 35 | 2021-02-04 | Thursday | -12424.25 | -41864.19 | -57448.76 | 17015.69 | 32600.26 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 36 | 2021-02-05 | Friday | -13172.77 | -42802.00 | -58486.77 | 16456.47 | 32141.24 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 37 | 2021-02-06 | Saturday | -13231.62 | -43046.89 | -58830.13 | 16583.64 | 32366.89 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 38 | 2021-02-07 | Sunday | -13268.12 | -43271.07 | -59153.68 | 16734.84 | 32617.45 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 39 | 2021-02-08 | Monday | -13949.44 | -44137.25 | -60117.71 | 16238.37 | 32218.83 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 40 | 2021-02-09 | Tuesday | -13938.63 | -44310.17 | -60387.89 | 16432.90 | 32510.63 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 41 | 2021-02-10 | Wednesday | -13972.66 | -44527.46 | -60702.20 | 16582.14 | 32756.88 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 42 | 2021-02-11 | Thursday | -14721.17 | -45452.44 | -61720.59 | 16010.09 | 32278.24 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 43 | 2021-02-12 | Friday | -14780.03 | -45684.79 | -62044.79 | 16124.74 | 32484.73 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 44 | 2021-02-13 | Saturday | -14816.52 | -45896.49 | -62349.24 | 16263.45 | 32716.19 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
## | 45 | 2021-02-14 | Sunday | -15497.85 | -46750.45 | -63294.58 | 15754.76 | 32298.89 |
## +----+------------+-----------------+----------------------+-----------+-----------+-----------+-----------+
paste("Forecasting by using Holt's Linear Trend Model ==> ", y_lab , sep=" ")
## [1] "Forecasting by using Holt's Linear Trend Model ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_holt=tail(forecasting_holt$mean,N_forecasting_days),Lower=tail(forecasting_holt$lower,N_forecasting_days),Upper=tail(forecasting_holt$upper,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | | FD | forecating_date | forecasting_by_holt | Lower.80. | Lower.95. | Upper.80. | Upper.95. |
## +====+============+=================+=====================+===========+===========+===========+===========+
## | 1 | 2021-01-01 | Friday | 7902.06 | 782.77 | 152.00 | 44288.74 | 94897.20 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 2 | 2021-01-02 | Saturday | 8051.43 | 770.10 | 144.64 | 46006.32 | 99278.94 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 3 | 2021-01-03 | Sunday | 8203.21 | 758.08 | 137.76 | 47764.01 | 103783.48 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 4 | 2021-01-04 | Monday | 8357.43 | 746.67 | 131.32 | 49562.49 | 108412.94 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 5 | 2021-01-05 | Tuesday | 8514.11 | 735.83 | 125.28 | 51402.42 | 113169.47 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 6 | 2021-01-06 | Wednesday | 8673.29 | 725.53 | 119.61 | 53284.51 | 118055.25 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 7 | 2021-01-07 | Thursday | 8835.00 | 715.74 | 114.29 | 55209.45 | 123072.45 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 8 | 2021-01-08 | Friday | 8999.28 | 706.43 | 109.28 | 57177.92 | 128223.29 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 9 | 2021-01-09 | Saturday | 9166.16 | 697.56 | 104.57 | 59190.62 | 133509.98 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 10 | 2021-01-10 | Sunday | 9335.67 | 689.13 | 100.12 | 61248.27 | 138934.76 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 11 | 2021-01-11 | Monday | 9507.85 | 681.09 | 95.93 | 63351.56 | 144499.89 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 12 | 2021-01-12 | Tuesday | 9682.73 | 673.44 | 91.98 | 65501.21 | 150207.67 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 13 | 2021-01-13 | Wednesday | 9860.35 | 666.14 | 88.24 | 67697.94 | 156060.37 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 14 | 2021-01-14 | Thursday | 10040.75 | 659.19 | 84.71 | 69942.47 | 162060.33 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 15 | 2021-01-15 | Friday | 10223.95 | 652.57 | 81.37 | 72235.53 | 168209.89 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 16 | 2021-01-16 | Saturday | 10410.00 | 646.26 | 78.20 | 74577.85 | 174511.40 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 17 | 2021-01-17 | Sunday | 10598.93 | 640.24 | 75.20 | 76970.18 | 180967.26 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 18 | 2021-01-18 | Monday | 10790.78 | 634.51 | 72.35 | 79413.26 | 187579.86 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 19 | 2021-01-19 | Tuesday | 10985.58 | 629.04 | 69.65 | 81907.84 | 194351.63 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 20 | 2021-01-20 | Wednesday | 11183.38 | 623.83 | 67.09 | 84454.68 | 201285.01 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 21 | 2021-01-21 | Thursday | 11384.20 | 618.87 | 64.65 | 87054.54 | 208382.48 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 22 | 2021-01-22 | Friday | 11588.10 | 614.14 | 62.33 | 89708.20 | 215646.53 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 23 | 2021-01-23 | Saturday | 11795.11 | 609.64 | 60.13 | 92416.44 | 223079.66 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 24 | 2021-01-24 | Sunday | 12005.26 | 605.35 | 58.03 | 95180.03 | 230684.42 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 25 | 2021-01-25 | Monday | 12218.60 | 601.28 | 56.03 | 97999.77 | 238463.36 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 26 | 2021-01-26 | Tuesday | 12435.17 | 597.40 | 54.12 | 100876.46 | 246419.05 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 27 | 2021-01-27 | Wednesday | 12655.00 | 593.71 | 52.31 | 103810.90 | 254554.11 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 28 | 2021-01-28 | Thursday | 12878.15 | 590.21 | 50.57 | 106803.90 | 262871.15 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 29 | 2021-01-29 | Friday | 13104.64 | 586.89 | 48.92 | 109856.28 | 271372.83 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 30 | 2021-01-30 | Saturday | 13334.52 | 583.74 | 47.34 | 112968.86 | 280061.81 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 31 | 2021-01-31 | Sunday | 13567.84 | 580.75 | 45.83 | 116142.48 | 288940.79 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 32 | 2021-02-01 | Monday | 13804.63 | 577.93 | 44.38 | 119377.98 | 298012.49 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 33 | 2021-02-02 | Tuesday | 14044.94 | 575.26 | 43.00 | 122676.20 | 307279.65 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 34 | 2021-02-03 | Wednesday | 14288.80 | 572.74 | 41.68 | 126037.99 | 316745.04 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 35 | 2021-02-04 | Thursday | 14536.28 | 570.36 | 40.42 | 129464.23 | 326411.44 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 36 | 2021-02-05 | Friday | 14787.40 | 568.13 | 39.20 | 132955.77 | 336281.66 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 37 | 2021-02-06 | Saturday | 15042.21 | 566.03 | 38.04 | 136513.49 | 346358.55 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 38 | 2021-02-07 | Sunday | 15300.76 | 564.06 | 36.93 | 140138.28 | 356644.96 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 39 | 2021-02-08 | Monday | 15563.10 | 562.22 | 35.86 | 143831.03 | 367143.79 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 40 | 2021-02-09 | Tuesday | 15829.26 | 560.50 | 34.84 | 147592.63 | 377857.93 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 41 | 2021-02-10 | Wednesday | 16099.30 | 558.91 | 33.86 | 151424.00 | 388790.33 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 42 | 2021-02-11 | Thursday | 16373.26 | 557.43 | 32.92 | 155326.04 | 399943.94 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 43 | 2021-02-12 | Friday | 16651.19 | 556.07 | 32.01 | 159299.68 | 411321.75 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 44 | 2021-02-13 | Saturday | 16933.14 | 554.81 | 31.14 | 163345.85 | 422926.76 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
## | 45 | 2021-02-14 | Sunday | 17219.15 | 553.67 | 30.30 | 167465.49 | 434762.01 |
## +----+------------+-----------------+---------------------+-----------+-----------+-----------+-----------+
paste("Forecasting by using ARIMA Model ==> ", y_lab , sep=" ")
## [1] "Forecasting by using ARIMA Model ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_auto.arima=tail(forecasting_auto_arima$mean,N_forecasting_days),Lower=tail(forecasting_auto_arima$lower,N_forecasting_days),Upper=tail(forecasting_auto_arima$upper,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | | FD | forecating_date | forecasting_by_auto.arima | Lower.80. | Lower.95. | Upper.80. | Upper.95. |
## +====+============+=================+===========================+===========+===========+===========+===========+
## | 1 | 2021-01-01 | Friday | 8321.61 | 3968.76 | 1664.50 | 12674.45 | 14978.71 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 2 | 2021-01-02 | Saturday | 8570.74 | 4180.04 | 1855.74 | 12961.43 | 15285.73 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 3 | 2021-01-03 | Sunday | 8105.56 | 3696.51 | 1362.50 | 12514.61 | 14848.62 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 4 | 2021-01-04 | Monday | 7419.86 | 2994.91 | 652.48 | 11844.81 | 14187.24 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 5 | 2021-01-05 | Tuesday | 7157.88 | 2698.75 | 338.23 | 11617.01 | 13977.53 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 6 | 2021-01-06 | Wednesday | 7313.95 | 2796.23 | 404.70 | 11831.68 | 14223.21 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 7 | 2021-01-07 | Thursday | 7701.16 | 3119.37 | 693.92 | 12282.95 | 14708.40 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 8 | 2021-01-08 | Friday | 8175.95 | 3539.73 | 1085.47 | 12812.17 | 15266.43 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 9 | 2021-01-09 | Saturday | 8355.66 | 3682.41 | 1208.53 | 13028.92 | 15502.79 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 10 | 2021-01-10 | Sunday | 8031.50 | 3336.39 | 850.95 | 12726.60 | 15212.04 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 11 | 2021-01-11 | Monday | 7560.15 | 2844.86 | 348.73 | 12275.45 | 14771.58 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 12 | 2021-01-12 | Tuesday | 7335.43 | 2587.61 | 74.27 | 12083.25 | 14596.59 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 13 | 2021-01-13 | Wednesday | 7401.61 | 2605.85 | 67.13 | 12197.37 | 14736.09 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 14 | 2021-01-14 | Thursday | 7693.51 | 2844.06 | 276.92 | 12542.95 | 15110.10 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 15 | 2021-01-15 | Friday | 8060.98 | 3162.85 | 569.94 | 12959.11 | 15552.03 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 16 | 2021-01-16 | Saturday | 8195.28 | 3261.27 | 649.36 | 13129.29 | 15741.19 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 17 | 2021-01-17 | Sunday | 7978.34 | 3019.81 | 394.92 | 12936.88 | 15561.77 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 18 | 2021-01-18 | Monday | 7649.50 | 2667.82 | 30.68 | 12631.18 | 15268.32 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 19 | 2021-01-19 | Tuesday | 7459.25 | 2446.40 | -207.25 | 12472.11 | 15125.76 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 20 | 2021-01-20 | Wednesday | 7479.76 | 2425.51 | -250.04 | 12534.00 | 15209.56 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 21 | 2021-01-21 | Thursday | 7696.75 | 2595.99 | -104.18 | 12797.50 | 15497.67 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 22 | 2021-01-22 | Friday | 7973.73 | 2829.16 | 105.80 | 13118.29 | 15841.66 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 23 | 2021-01-23 | Saturday | 8077.92 | 2898.73 | 157.03 | 13257.11 | 15998.81 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 24 | 2021-01-24 | Sunday | 7937.35 | 2731.83 | -23.81 | 13142.86 | 15898.50 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 25 | 2021-01-25 | Monday | 7704.82 | 2474.29 | -294.59 | 12935.35 | 15704.23 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 26 | 2021-01-26 | Tuesday | 7547.49 | 2286.82 | -498.01 | 12808.16 | 15592.98 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 27 | 2021-01-27 | Wednesday | 7545.72 | 2247.94 | -556.54 | 12843.50 | 15647.98 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 28 | 2021-01-28 | Thursday | 7704.15 | 2365.05 | -461.30 | 13043.24 | 15869.59 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 29 | 2021-01-29 | Friday | 7909.66 | 2530.72 | -316.71 | 13288.59 | 16136.03 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 30 | 2021-01-30 | Saturday | 7992.80 | 2580.48 | -284.63 | 13405.12 | 16270.23 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 31 | 2021-01-31 | Sunday | 7904.24 | 2464.56 | -415.04 | 13343.93 | 16223.53 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 32 | 2021-02-01 | Monday | 7738.23 | 2272.44 | -620.97 | 13204.01 | 16097.42 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 33 | 2021-02-02 | Tuesday | 7611.16 | 2116.07 | -792.85 | 13106.25 | 16015.17 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 34 | 2021-02-03 | Wednesday | 7599.24 | 2069.99 | -857.02 | 13128.49 | 16055.50 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 35 | 2021-02-04 | Thursday | 7712.77 | 2146.07 | -800.76 | 13279.48 | 16226.31 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 36 | 2021-02-05 | Friday | 7863.90 | 2260.54 | -705.69 | 13467.25 | 16433.49 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 37 | 2021-02-06 | Saturday | 7931.23 | 2295.70 | -687.57 | 13566.76 | 16550.03 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 38 | 2021-02-07 | Sunday | 7877.01 | 2213.65 | -784.35 | 13540.37 | 16538.37 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 39 | 2021-02-08 | Monday | 7757.85 | 2067.87 | -944.23 | 13447.84 | 16459.94 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 40 | 2021-02-09 | Tuesday | 7657.32 | 1938.74 | -1088.50 | 13375.91 | 16403.15 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 41 | 2021-02-10 | Wednesday | 7641.46 | 1890.87 | -1153.32 | 13392.06 | 16436.24 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 42 | 2021-02-11 | Thursday | 7721.37 | 1936.26 | -1126.19 | 13506.48 | 16568.93 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 43 | 2021-02-12 | Friday | 7831.96 | 2012.75 | -1067.75 | 13651.16 | 16731.66 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 44 | 2021-02-13 | Saturday | 7886.67 | 2036.44 | -1060.49 | 13736.90 | 16833.82 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
## | 45 | 2021-02-14 | Sunday | 7854.60 | 1976.49 | -1135.19 | 13732.70 | 16844.38 |
## +----+------------+-----------------+---------------------------+-----------+-----------+-----------+-----------+
paste("Forecasting by using NNAR Model ==> ", y_lab , sep=" ")
## [1] "Forecasting by using NNAR Model ==> Daily Covid 19 Infection cases in Spain"
print(ascii(data.frame(FD,forecating_date=forecasting_data_by_name,forecasting_by_NNAR=tail(forecasting_NNAR$mean,N_forecasting_days))), type = "rest")
##
## +----+------------+-----------------+---------------------+
## | | FD | forecating_date | forecasting_by_NNAR |
## +====+============+=================+=====================+
## | 1 | 2021-01-01 | Friday | 17913.97 |
## +----+------------+-----------------+---------------------+
## | 2 | 2021-01-02 | Saturday | 16805.53 |
## +----+------------+-----------------+---------------------+
## | 3 | 2021-01-03 | Sunday | 17951.02 |
## +----+------------+-----------------+---------------------+
## | 4 | 2021-01-04 | Monday | 13244.64 |
## +----+------------+-----------------+---------------------+
## | 5 | 2021-01-05 | Tuesday | 9381.99 |
## +----+------------+-----------------+---------------------+
## | 6 | 2021-01-06 | Wednesday | 14599.79 |
## +----+------------+-----------------+---------------------+
## | 7 | 2021-01-07 | Thursday | 22330.59 |
## +----+------------+-----------------+---------------------+
## | 8 | 2021-01-08 | Friday | 24560.48 |
## +----+------------+-----------------+---------------------+
## | 9 | 2021-01-09 | Saturday | 23253.16 |
## +----+------------+-----------------+---------------------+
## | 10 | 2021-01-10 | Sunday | 24762.70 |
## +----+------------+-----------------+---------------------+
## | 11 | 2021-01-11 | Monday | 18968.66 |
## +----+------------+-----------------+---------------------+
## | 12 | 2021-01-12 | Tuesday | 13695.31 |
## +----+------------+-----------------+---------------------+
## | 13 | 2021-01-13 | Wednesday | 19472.53 |
## +----+------------+-----------------+---------------------+
## | 14 | 2021-01-14 | Thursday | 25863.77 |
## +----+------------+-----------------+---------------------+
## | 15 | 2021-01-15 | Friday | 26908.86 |
## +----+------------+-----------------+---------------------+
## | 16 | 2021-01-16 | Saturday | 25230.00 |
## +----+------------+-----------------+---------------------+
## | 17 | 2021-01-17 | Sunday | 25982.66 |
## +----+------------+-----------------+---------------------+
## | 18 | 2021-01-18 | Monday | 20217.95 |
## +----+------------+-----------------+---------------------+
## | 19 | 2021-01-19 | Tuesday | 13679.61 |
## +----+------------+-----------------+---------------------+
## | 20 | 2021-01-20 | Wednesday | 17466.68 |
## +----+------------+-----------------+---------------------+
## | 21 | 2021-01-21 | Thursday | 23709.65 |
## +----+------------+-----------------+---------------------+
## | 22 | 2021-01-22 | Friday | 25476.95 |
## +----+------------+-----------------+---------------------+
## | 23 | 2021-01-23 | Saturday | 23557.12 |
## +----+------------+-----------------+---------------------+
## | 24 | 2021-01-24 | Sunday | 23205.09 |
## +----+------------+-----------------+---------------------+
## | 25 | 2021-01-25 | Monday | 17867.20 |
## +----+------------+-----------------+---------------------+
## | 26 | 2021-01-26 | Tuesday | 11752.30 |
## +----+------------+-----------------+---------------------+
## | 27 | 2021-01-27 | Wednesday | 16666.55 |
## +----+------------+-----------------+---------------------+
## | 28 | 2021-01-28 | Thursday | 20539.83 |
## +----+------------+-----------------+---------------------+
## | 29 | 2021-01-29 | Friday | 20034.65 |
## +----+------------+-----------------+---------------------+
## | 30 | 2021-01-30 | Saturday | 17039.38 |
## +----+------------+-----------------+---------------------+
## | 31 | 2021-01-31 | Sunday | 16163.48 |
## +----+------------+-----------------+---------------------+
## | 32 | 2021-02-01 | Monday | 12574.01 |
## +----+------------+-----------------+---------------------+
## | 33 | 2021-02-02 | Tuesday | 7500.17 |
## +----+------------+-----------------+---------------------+
## | 34 | 2021-02-03 | Wednesday | 11600.65 |
## +----+------------+-----------------+---------------------+
## | 35 | 2021-02-04 | Thursday | 13818.41 |
## +----+------------+-----------------+---------------------+
## | 36 | 2021-02-05 | Friday | 12448.73 |
## +----+------------+-----------------+---------------------+
## | 37 | 2021-02-06 | Saturday | 10682.33 |
## +----+------------+-----------------+---------------------+
## | 38 | 2021-02-07 | Sunday | 10386.94 |
## +----+------------+-----------------+---------------------+
## | 39 | 2021-02-08 | Monday | 7768.23 |
## +----+------------+-----------------+---------------------+
## | 40 | 2021-02-09 | Tuesday | 5051.11 |
## +----+------------+-----------------+---------------------+
## | 41 | 2021-02-10 | Wednesday | 8407.03 |
## +----+------------+-----------------+---------------------+
## | 42 | 2021-02-11 | Thursday | 9398.30 |
## +----+------------+-----------------+---------------------+
## | 43 | 2021-02-12 | Friday | 9040.03 |
## +----+------------+-----------------+---------------------+
## | 44 | 2021-02-13 | Saturday | 7880.77 |
## +----+------------+-----------------+---------------------+
## | 45 | 2021-02-14 | Sunday | 7883.54 |
## +----+------------+-----------------+---------------------+
result<-c(x1,x2,x3,x4,x5)
table.error<-data.frame(country.name,NNAR.model=MAPE_Mean_All_NNAR, BATS.Model=MAPE_Mean_All.bats_Model,TBATS.Model=MAPE_Mean_All.TBATS_Model,Holt.Model=MAPE_Mean_All.Holt_Model,ARIMA.Model=MAPE_Mean_All.ARIMA_Model,Best.Model=result)
library(ascii)
print(ascii(table(table.error)), type = "rest")
##
## +---+--------------+------------+------------+-------------+------------+-------------+------------+------+
## | | country.name | NNAR.model | BATS.Model | TBATS.Model | Holt.Model | ARIMA.Model | Best.Model | Freq |
## +===+==============+============+============+=============+============+=============+============+======+
## | 1 | Spain | 22.807 | 91.059 | 95.298 | 38.556 | 28.885 | NNAR Model | 1.00 |
## +---+--------------+------------+------------+-------------+------------+-------------+------------+------+
MAPE.Value<-c(MAPE_Mean_All_NNAR,MAPE_Mean_All.bats_Model,MAPE_Mean_All.TBATS_Model,MAPE_Mean_All.Holt_Model,MAPE_Mean_All.ARIMA_Model)
Model<-c("NNAR.model","BATS.Model","TBATS.Model","Holt.Model","ARIMA.Model")
channel_data<-data.frame(Model,MAPE.Value)
# Normally, the entire expression below would be assigned to an object, but we're
# going bare bones here.
ggplot(channel_data, aes(x = Model, y = MAPE.Value)) +
geom_bar(stat = "identity") +
geom_text(aes(label = MAPE.Value)) + # x AND y INHERITED. WE JUST NEED TO SPECIFY "label"
coord_flip() +
scale_y_continuous(expand = c(0, 0))

message("System finished Modelling and Forecasting by using BATS, TBATS, Holt's Linear Trend, and ARIMA Model ==>",y_lab, sep=" ")
## System finished Modelling and Forecasting by using BATS, TBATS, Holt's Linear Trend, and ARIMA Model ==>Daily Covid 19 Infection cases in Spain
message(" Thank you for using our System For Modelling and Forecasting ==> ",y_lab, sep=" ")
## Thank you for using our System For Modelling and Forecasting ==> Daily Covid 19 Infection cases in Spain