Loading Packages and Data
rm(list = ls())
gc()
## used (Mb) gc trigger (Mb) limit (Mb) max used (Mb)
## Ncells 528716 28.3 1175911 62.9 NA 669411 35.8
## Vcells 979110 7.5 8388608 64.0 16384 1851683 14.2
packages <- c("dplyr",
"tidyverse",
"tsibble",
"lubridate",
"fpp3",
"ggplot2",
"latex2exp",
"magrittr",
"forecast",
'corrplot',
'knitr',
'psych',
'data.table')
for (i in 1:length(packages)) {
if (!packages[i] %in% rownames(installed.packages())) {
install.packages(packages[i]
, repos = "http://cran.rstudio.com/"
, dependencies = TRUE
)
}
library(packages[i], character.only = TRUE)
}
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ forcats 1.0.0 ✔ readr 2.1.4
## ✔ ggplot2 3.4.3 ✔ stringr 1.5.0
## ✔ lubridate 1.9.2 ✔ tibble 3.2.1
## ✔ purrr 1.0.1 ✔ tidyr 1.3.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
##
## Attaching package: 'tsibble'
##
##
## The following object is masked from 'package:lubridate':
##
## interval
##
##
## The following objects are masked from 'package:base':
##
## intersect, setdiff, union
##
##
## ── Attaching packages ────────────────────────────────────────────── fpp3 0.5 ──
##
## ✔ tsibbledata 0.4.1 ✔ fable 0.3.3
## ✔ feasts 0.3.1 ✔ fabletools 0.3.3
##
## ── Conflicts ───────────────────────────────────────────────── fpp3_conflicts ──
## ✖ lubridate::date() masks base::date()
## ✖ dplyr::filter() masks stats::filter()
## ✖ tsibble::intersect() masks base::intersect()
## ✖ tsibble::interval() masks lubridate::interval()
## ✖ dplyr::lag() masks stats::lag()
## ✖ tsibble::setdiff() masks base::setdiff()
## ✖ tsibble::union() masks base::union()
##
##
## Attaching package: 'magrittr'
##
##
## The following object is masked from 'package:purrr':
##
## set_names
##
##
## The following object is masked from 'package:tidyr':
##
## extract
##
##
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
##
##
## Attaching package: 'forecast'
##
##
## The following object is masked from 'package:fabletools':
##
## accuracy
##
##
## corrplot 0.92 loaded
##
##
## Attaching package: 'psych'
##
##
## The following objects are masked from 'package:ggplot2':
##
## %+%, alpha
##
##
##
## Attaching package: 'data.table'
##
##
## The following object is masked from 'package:tsibble':
##
## key
##
##
## The following objects are masked from 'package:lubridate':
##
## hour, isoweek, mday, minute, month, quarter, second, wday, week,
## yday, year
##
##
## The following object is masked from 'package:purrr':
##
## transpose
##
##
## The following objects are masked from 'package:dplyr':
##
## between, first, last
train_labels <- read.csv("dengue_features_train.csv")
train_cases <- read.csv("dengue_labels_train.csv")
test <- read.csv("dengue_features_test.csv")
submissions <- read.csv("submission_format.csv")
train <- left_join(x=train_labels, y=train_cases, by=c("year", "weekofyear", "city"))
train <- na.omit(train)
sj_train <- train %>% filter(city=="sj")
iq_train <- train %>% filter(city=="iq")
sj_train_TS <- ts(sj_train$total_cases)
iq_train_TS <- ts(iq_train$total_cases)
sj_test <- test %>% filter(city=="sj")
iq_test <- test %>% filter(city=="iq")
sj_test_TS <- ts(sj_test)
iq_test_TS <- ts(iq_test)
Overview of Data
plot <- ggplot(train, aes(x = year, y = total_cases, group = city, color = city)) +
geom_line() +
labs(x = "Year", y = "Total Cases", title = "Total Cases Over Years by City") +
theme_classic()
plot

Overview of San Juan Cases
sj_totalcases <- tsclean(ts(sj_train$total_cases, start=c(1990,18), end=c(2008,17), frequency = 52))
autoplot(sj_totalcases)+
ggtitle("San Juan Total Casses")+
ylab("Dengue Cases")+
xlab("Time") +
theme_linedraw()

San Juan Decomposition
sj_totalcases %>%
decompose(type = c("additive")) %>%
autoplot() +
ggtitle("Decomposition of San Juan Training Data")

San Juan Correlation Matrix and Correlation Plot
# sj_precipitation <- ts(sj_train$precipitation_amt_mm, start = 1990, frequency = 52)
# view(sj_precipitation)
#
# autoplot(sj_precipitation)+
# ggtitle("San Juan Precipitation In (mm)")+
# ylab("Precipitation (mm)")+
# xlab("Time") +
# theme_linedraw()
numeric_cols <- sj_train %>%
select_if(is.numeric)
correlation_with_total_cases <- numeric_cols %>%
cor(sj_train$total_cases, use = "pairwise.complete.obs")
correlationtable <- kable(correlation_with_total_cases, format = "markdown", caption = "Correlation Matrix for Total Cases")
view(correlationtable)
corrplot(correlation_with_total_cases)

San Juan ETS
### San Juan ####
## ETS
sj_ets <- ets(sj_totalcases)
## Warning in ets(sj_totalcases): I can't handle data with frequency greater than
## 24. Seasonality will be ignored. Try stlf() if you need seasonal forecasts.
summary(sj_ets)
## ETS(A,Ad,N)
##
## Call:
## ets(y = sj_totalcases)
##
## Smoothing parameters:
## alpha = 0.7792
## beta = 0.1298
## phi = 0.8
##
## Initial states:
## l = 3.7461
## b = 0.2485
##
## sigma: 8.9294
##
## AIC AICc BIC
## 10509.21 10509.30 10538.26
##
## Training set error measures:
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set 0.02214673 8.905544 6.372582 -Inf Inf 0.2081121 0.006572332
forecast_ets.san.juan <- forecast(sj_ets)
forecast_ets.san.juan
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## 2008.327 27.10930 15.665783 38.55282 9.60794923 44.61066
## 2008.346 28.01869 12.751941 43.28545 4.67021012 51.36718
## 2008.365 28.74621 9.896495 47.59592 -0.08194079 57.57436
## 2008.385 29.32822 7.080841 51.57560 -4.69620973 63.35265
## 2008.404 29.79383 4.311876 55.27579 -9.17745649 68.76512
## 2008.423 30.16632 1.599778 58.73286 -13.52243584 73.85507
## 2008.442 30.46431 -1.047151 61.97577 -17.72831212 78.65693
## 2008.462 30.70270 -3.623404 65.02881 -21.79454910 83.19996
## 2008.481 30.89342 -6.126016 67.91286 -25.72292222 87.50976
## 2008.500 31.04599 -8.554045 70.64603 -29.51703771 91.60902
## 2008.519 31.16805 -10.908051 73.24415 -33.18179352 95.51789
## 2008.538 31.26570 -13.189665 75.72106 -36.72291263 99.25431
## 2008.558 31.34381 -15.401240 78.08887 -40.14657640 102.83421
## 2008.577 31.40631 -17.545585 80.35820 -43.45915137 106.27177
## 2008.596 31.45630 -19.625775 82.53838 -46.66699342 109.57960
## 2008.615 31.49630 -21.645005 84.63760 -49.77631246 112.76891
## 2008.635 31.52830 -23.606490 86.66308 -52.79308290 115.84968
## 2008.654 31.55389 -25.513392 88.62118 -55.72298806 118.83078
## 2008.673 31.57437 -27.368773 90.51752 -58.57138936 121.72014
## 2008.692 31.59076 -29.175566 92.35708 -61.34331298 124.52482
## 2008.712 31.60386 -30.936553 94.14428 -64.04344893 127.25117
## 2008.731 31.61435 -32.654360 95.88305 -66.67615846 129.90485
## 2008.750 31.62273 -34.331450 97.57692 -69.24548699 132.49096
## 2008.769 31.62944 -35.970128 99.22902 -71.75518040 135.01407
## 2008.788 31.63481 -37.572542 100.84217 -74.20870322 137.47833
## 2008.808 31.63911 -39.140694 102.41891 -76.60925759 139.88747
## 2008.827 31.64254 -40.676443 103.96153 -78.95980235 142.24489
## 2008.846 31.64529 -42.181519 105.47210 -81.26307166 144.55366
## 2008.865 31.64749 -43.657525 106.95251 -83.52159280 146.81657
## 2008.885 31.64925 -45.105953 108.40445 -85.73770313 149.03620
## 2008.904 31.65066 -46.528186 109.82950 -87.91356582 151.21488
## 2008.923 31.65178 -47.925510 111.22908 -90.05118457 153.35475
## 2008.942 31.65268 -49.299121 112.60449 -92.15241717 155.45778
## 2008.962 31.65340 -50.650129 113.95694 -94.21898793 157.52580
## 2008.981 31.65398 -51.979571 115.28753 -96.25249909 159.56046
## 2009.000 31.65444 -53.288411 116.59729 -98.25444124 161.56332
## 2009.019 31.65481 -54.577549 117.88717 -100.22620281 163.53582
## 2009.038 31.65511 -55.847825 119.15804 -102.16907870 165.47929
## 2009.058 31.65534 -57.100025 120.41071 -104.08427811 167.39496
## 2009.077 31.65553 -58.334884 121.64595 -105.97293169 169.28399
## 2009.096 31.65568 -59.553090 122.86445 -107.83609796 171.14746
## 2009.115 31.65580 -60.755291 124.06690 -109.67476926 172.98637
## 2009.135 31.65590 -61.942093 125.25389 -111.48987699 174.80168
## 2009.154 31.65598 -63.114066 126.42602 -113.28229648 176.59425
## 2009.173 31.65604 -64.271748 127.58383 -115.05285143 178.36493
## 2009.192 31.65609 -65.415646 128.72782 -116.80231781 180.11449
## 2009.212 31.65613 -66.546236 129.85849 -118.53142756 181.84368
## 2009.231 31.65616 -67.663971 130.97629 -120.24087187 183.55319
## 2009.250 31.65618 -68.769276 132.08165 -121.93130421 185.24367
## 2009.269 31.65621 -69.862557 133.17497 -123.60334302 186.91575
## 2009.288 31.65622 -70.944195 134.25664 -125.25757429 188.57002
## 2009.308 31.65623 -72.014554 135.32702 -126.89455378 190.20702
## 2009.327 31.65624 -73.073978 136.38647 -128.51480918 191.82730
## 2009.346 31.65625 -74.122796 137.43530 -130.11884195 193.43135
## 2009.365 31.65626 -75.161319 138.47384 -131.70712914 195.01965
## 2009.385 31.65627 -76.189844 139.50237 -133.28012499 196.59266
## 2009.404 31.65627 -77.208653 140.52119 -134.83826238 198.15080
## 2009.423 31.65627 -78.218018 141.53056 -136.38195423 199.69450
## 2009.442 31.65628 -79.218195 142.53075 -137.91159473 201.22415
## 2009.462 31.65628 -80.209431 143.52199 -139.42756051 202.74012
## 2009.481 31.65628 -81.191962 144.50452 -140.93021172 204.24277
## 2009.500 31.65628 -82.166011 145.47857 -142.41989298 205.73245
## 2009.519 31.65628 -83.131796 146.44436 -143.89693435 207.20950
## 2009.538 31.65628 -84.089523 147.40209 -145.36165211 208.67422
## 2009.558 31.65628 -85.039391 148.35196 -146.81434961 210.12692
## 2009.577 31.65628 -85.981589 149.29416 -148.25531795 211.56789
## 2009.596 31.65628 -86.916301 150.22887 -149.68483669 212.99741
## 2009.615 31.65628 -87.843702 151.15627 -151.10317444 214.41574
## 2009.635 31.65629 -88.763962 152.07653 -152.51058952 215.82316
## 2009.654 31.65629 -89.677241 152.98981 -153.90733041 217.21990
## 2009.673 31.65629 -90.583698 153.89627 -155.29363635 218.60621
## 2009.692 31.65629 -91.483482 154.79605 -156.66973775 219.98231
## 2009.712 31.65629 -92.376739 155.68931 -158.03585670 221.34843
## 2009.731 31.65629 -93.263609 156.57618 -159.39220731 222.70478
## 2009.750 31.65629 -94.144227 157.45680 -160.73899618 224.05157
## 2009.769 31.65629 -95.018723 158.33130 -162.07642272 225.38899
## 2009.788 31.65629 -95.887224 159.19980 -163.40467949 226.71725
## 2009.808 31.65629 -96.749850 160.06242 -164.72395255 228.03652
## 2009.827 31.65629 -97.606720 160.91929 -166.03442176 229.34699
## 2009.846 31.65629 -98.457947 161.77052 -167.33626105 230.64883
## 2009.865 31.65629 -99.303641 162.61621 -168.62963870 231.94221
## 2009.885 31.65629 -100.143909 163.45648 -169.91471759 233.22729
## 2009.904 31.65629 -100.978854 164.29143 -171.19165543 234.50423
## 2009.923 31.65629 -101.808575 165.12115 -172.46060502 235.77318
## 2009.942 31.65629 -102.633170 165.94574 -173.72171443 237.03429
## 2009.962 31.65629 -103.452733 166.76531 -174.97512720 238.28770
## 2009.981 31.65629 -104.267354 167.57993 -176.22098256 239.53356
## 2010.000 31.65629 -105.077122 168.38969 -177.45941558 240.77199
## 2010.019 31.65629 -105.882122 169.19469 -178.69055735 242.00313
## 2010.038 31.65629 -106.682438 169.99501 -179.91453518 243.22711
## 2010.058 31.65629 -107.478151 170.79072 -181.13147266 244.44405
## 2010.077 31.65629 -108.269338 171.58191 -182.34148993 245.65406
## 2010.096 31.65629 -109.056078 172.36865 -183.54470370 246.85728
## 2010.115 31.65629 -109.838443 173.15102 -184.74122746 248.05380
## 2010.135 31.65629 -110.616505 173.92908 -185.93117158 249.24374
## 2010.154 31.65629 -111.390336 174.70291 -187.11464343 250.42722
## 2010.173 31.65629 -112.160003 175.47258 -188.29174747 251.60432
## 2010.192 31.65629 -112.925573 176.23815 -189.46258541 252.77516
## 2010.212 31.65629 -113.687110 176.99968 -190.62725626 253.93983
## 2010.231 31.65629 -114.444678 177.75725 -191.78585645 255.09843
## 2010.250 31.65629 -115.198338 178.51091 -192.93847994 256.25105
## 2010.269 31.65629 -115.948150 179.26072 -194.08521828 257.39779
## 2010.288 31.65629 -116.694172 180.00674 -195.22616070 258.53873
## 2010.308 31.65629 -117.436461 180.74903 -196.36139421 259.67397
autoplot(forecast_ets.san.juan,
main = "San Juan ETS Forecast",
ylab = " Total cases")

San Juan STLF
## STLF
sj_stlf <- stlf(sj_totalcases)
summary(sj_stlf)
##
## Forecast method: STL + ETS(A,Ad,N)
##
## Model Information:
## ETS(A,Ad,N)
##
## Call:
## ets(y = na.interp(x), model = etsmodel, allow.multiplicative.trend = allow.multiplicative.trend)
##
## Smoothing parameters:
## alpha = 0.7912
## beta = 0.1417
## phi = 0.8
##
## Initial states:
## l = 1.2531
## b = -0.8155
##
## sigma: 8.2053
##
## AIC AICc BIC
## 10350.88 10350.97 10379.93
##
## Error measures:
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set 0.02741462 8.183322 5.927194 NaN Inf 0.1935668 0.006881635
##
## Forecasts:
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## 2008.327 30.74331 20.227840 41.25879 14.6612852 46.82534
## 2008.346 30.97587 16.796651 45.15508 9.2906276 52.66110
## 2008.365 34.63074 17.007630 52.25384 7.6785208 61.58295
## 2008.385 32.16101 11.264939 53.05709 0.2032247 64.11880
## 2008.404 30.41557 6.399021 54.43212 -6.3145726 67.14571
## 2008.423 31.62536 4.630156 58.62056 -9.6602404 72.91096
## 2008.442 31.66505 1.824329 61.50577 -13.9723936 77.30249
## 2008.462 34.42812 1.866775 66.98946 -15.3701576 84.22639
## 2008.481 32.56562 -2.599553 67.73080 -21.2148731 86.34612
## 2008.500 29.66334 -7.996840 67.32353 -27.9329370 87.25962
## 2008.519 34.71829 -5.335765 74.77235 -26.5391040 95.97569
## 2008.538 34.24059 -8.113556 76.59474 -30.5344868 99.01567
## 2008.558 34.01430 -10.553056 78.58166 -34.1455897 102.17419
## 2008.577 32.65857 -14.041578 79.35872 -38.7631432 104.08028
## 2008.596 34.80852 -13.949973 83.56702 -39.7611624 109.37821
## 2008.615 30.95532 -19.792592 81.70323 -46.6569146 108.56756
## 2008.635 36.90481 -15.768634 89.57826 -43.6522736 117.46190
## 2008.654 34.40594 -20.133785 88.94567 -49.0053717 117.81725
## 2008.673 38.16864 -18.182327 94.51960 -48.0127263 124.35000
## 2008.692 40.58769 -17.523321 98.69871 -48.2854329 129.46082
## 2008.712 37.50228 -22.321093 97.32566 -53.9896757 128.99425
## 2008.731 38.77029 -22.720958 100.26154 -55.2724590 132.81304
## 2008.750 40.74020 -22.377341 103.85774 -55.7897492 137.27015
## 2008.769 40.07232 -24.632584 104.77723 -58.8852923 139.02993
## 2008.788 40.42907 -25.826697 106.68483 -60.9003783 141.75851
## 2008.808 42.53256 -25.239764 110.30488 -61.1162639 146.18138
## 2008.827 39.76652 -29.490092 109.02312 -66.1523260 145.68536
## 2008.846 36.57567 -34.134799 107.28614 -71.5666607 144.71800
## 2008.865 34.95780 -37.177810 107.09340 -75.3640936 145.27969
## 2008.885 33.89870 -39.634874 107.43228 -78.5611970 146.35860
## 2008.904 30.02134 -44.884465 104.92715 -84.5372050 144.57989
## 2008.923 24.00878 -52.244850 100.26241 -92.6110823 140.62864
## 2008.942 26.10487 -51.473386 103.68312 -92.5408322 144.75056
## 2008.962 24.04085 -54.839952 102.92166 -96.5969282 144.67864
## 2008.981 26.60003 -53.562306 106.76236 -95.9976817 149.19773
## 2009.000 20.26396 -61.159833 101.68776 -104.2629869 144.79091
## 2009.019 21.73695 -60.929146 104.40305 -104.6899345 148.16384
## 2009.038 20.22692 -63.663144 104.11699 -108.0718638 148.52571
## 2009.058 22.86691 -62.229583 107.96340 -107.2769435 153.01076
## 2009.077 24.44585 -61.840230 110.73194 -107.5173239 156.40903
## 2009.096 30.43932 -57.020216 117.89885 -103.3184968 164.19713
## 2009.115 27.57940 -61.038072 116.19687 -107.9493270 163.10812
## 2009.135 27.78822 -61.972268 117.54871 -109.4886021 165.06505
## 2009.154 33.87231 -57.016842 124.76147 -105.1306538 172.87528
## 2009.173 33.40289 -58.601092 125.40688 -107.3050599 174.11085
## 2009.192 30.23673 -62.868750 123.34221 -112.1558135 172.62927
## 2009.212 28.05824 -66.135855 122.25234 -115.9991994 172.11569
## 2009.231 33.42095 -61.849336 128.69124 -112.2823802 179.12429
## 2009.250 32.91579 -63.418667 129.25025 -114.4150501 180.24664
## 2009.269 35.31832 -62.068690 132.70533 -113.6222582 184.25890
## 2009.288 36.12844 -62.299864 134.55675 -114.4046611 186.66154
## 2009.308 31.87583 -67.582873 131.33453 -120.2331301 183.98479
## 2009.327 36.15298 -64.325559 136.63151 -117.5156832 189.82164
## 2009.346 35.30361 -66.184518 136.79173 -119.9090850 190.51630
## 2009.365 38.09294 -64.394832 140.58070 -118.6485781 194.83445
## 2009.385 34.93078 -68.546976 138.40853 -123.3247909 193.18635
## 2009.404 32.63139 -71.826975 137.08975 -127.1238917 192.38666
## 2009.423 33.39801 -72.031834 138.82786 -127.8430244 194.63905
## 2009.442 33.08318 -73.309289 139.47564 -129.6300584 195.79641
## 2009.462 35.56262 -71.783832 142.90907 -128.6096105 199.73485
## 2009.481 33.47323 -74.818805 141.76526 -132.1451453 199.09160
## 2009.500 30.38943 -78.840001 139.61886 -136.6625692 197.44143
## 2009.519 35.29916 -74.859687 145.45802 -133.1742607 203.77259
## 2009.538 34.70529 -76.375210 145.78578 -135.1776732 204.58825
## 2009.558 34.38606 -77.608498 146.38062 -136.8948355 205.66695
## 2009.577 32.95598 -79.945241 145.85719 -139.7115357 205.62349
## 2009.596 35.04645 -78.754205 148.84710 -138.9966329 209.08953
## 2009.615 31.14566 -83.547377 145.83870 -144.2622048 206.55353
## 2009.635 37.05709 -78.521446 152.63562 -139.7050260 213.81920
## 2009.654 34.52776 -81.929535 150.98505 -143.5783033 212.63382
## 2009.673 38.26609 -79.063382 155.59557 -141.1738545 217.70604
## 2009.692 40.66566 -77.529562 158.86088 -140.0983316 221.42965
## 2009.712 37.56466 -81.490012 156.61932 -144.5137466 219.64306
## 2009.731 38.82019 -81.087768 158.72815 -144.5632061 222.20359
## 2009.750 40.78012 -79.975098 161.53534 -143.8990491 225.45929
## 2009.769 40.10426 -81.492318 161.70083 -145.8616558 226.07017
## 2009.788 40.45461 -81.977535 162.88676 -146.7891992 227.69843
## 2009.808 42.55300 -80.709062 165.81506 -145.9600539 231.06605
## 2009.827 39.78287 -84.303552 163.86928 -149.9909342 229.55667
## 2009.846 36.58875 -88.316586 161.49409 -154.4374775 227.61498
## 2009.865 34.96826 -90.750662 160.68718 -157.3022402 227.23876
## 2009.885 33.90707 -92.620204 160.43435 -159.5996990 227.41384
## 2009.904 30.02804 -97.302458 157.35854 -164.7071530 224.76324
## 2009.923 24.01414 -104.114550 152.14282 -171.9417791 219.97005
## 2009.942 26.10915 -102.812779 155.03108 -171.0599273 223.27823
## 2009.962 24.04428 -105.666043 153.75461 -174.3305415 222.41911
## 2009.981 26.60277 -103.891188 157.09673 -172.9705166 226.17605
## 2010.000 20.26616 -111.006752 151.53907 -180.4984334 221.03075
## 2010.019 21.73871 -110.308562 153.78598 -180.2101643 223.68758
## 2010.038 20.22833 -112.588784 153.04544 -182.8979161 223.35457
## 2010.058 22.86803 -110.714490 156.45055 -181.4288051 227.16486
## 2010.077 24.44675 -109.896813 158.79032 -181.0140012 229.90751
## 2010.096 30.44004 -104.660290 165.54036 -176.1780825 237.05815
## 2010.115 27.57997 -108.272896 163.43284 -180.1890612 235.34901
## 2010.135 27.78868 -108.812585 164.38995 -181.1249283 236.70230
## 2010.154 33.87268 -103.472907 171.21827 -176.1792702 243.92463
## 2010.173 33.40319 -104.682709 171.48909 -177.7809669 244.58734
## 2010.192 30.23696 -108.585293 169.05922 -182.0733571 242.54729
## 2010.212 28.05843 -111.496299 167.61317 -185.3721118 241.48898
## 2010.231 33.42110 -106.862279 173.70449 -181.1238164 247.96602
## 2010.250 32.91591 -108.092354 173.92418 -182.7376223 248.56945
## 2010.269 35.31842 -106.411031 177.04786 -181.4380677 252.07490
## 2010.288 36.12852 -106.318455 178.57549 -181.7253271 253.98236
## 2010.308 31.87589 -111.285013 175.03679 -187.0698173 250.82160
forecast_stlf.san.juan <- forecast(sj_stlf)
forecast_stlf.san.juan
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## 2008.327 30.74331 20.227840 41.25879 14.6612852 46.82534
## 2008.346 30.97587 16.796651 45.15508 9.2906276 52.66110
## 2008.365 34.63074 17.007630 52.25384 7.6785208 61.58295
## 2008.385 32.16101 11.264939 53.05709 0.2032247 64.11880
## 2008.404 30.41557 6.399021 54.43212 -6.3145726 67.14571
## 2008.423 31.62536 4.630156 58.62056 -9.6602404 72.91096
## 2008.442 31.66505 1.824329 61.50577 -13.9723936 77.30249
## 2008.462 34.42812 1.866775 66.98946 -15.3701576 84.22639
## 2008.481 32.56562 -2.599553 67.73080 -21.2148731 86.34612
## 2008.500 29.66334 -7.996840 67.32353 -27.9329370 87.25962
## 2008.519 34.71829 -5.335765 74.77235 -26.5391040 95.97569
## 2008.538 34.24059 -8.113556 76.59474 -30.5344868 99.01567
## 2008.558 34.01430 -10.553056 78.58166 -34.1455897 102.17419
## 2008.577 32.65857 -14.041578 79.35872 -38.7631432 104.08028
## 2008.596 34.80852 -13.949973 83.56702 -39.7611624 109.37821
## 2008.615 30.95532 -19.792592 81.70323 -46.6569146 108.56756
## 2008.635 36.90481 -15.768634 89.57826 -43.6522736 117.46190
## 2008.654 34.40594 -20.133785 88.94567 -49.0053717 117.81725
## 2008.673 38.16864 -18.182327 94.51960 -48.0127263 124.35000
## 2008.692 40.58769 -17.523321 98.69871 -48.2854329 129.46082
## 2008.712 37.50228 -22.321093 97.32566 -53.9896757 128.99425
## 2008.731 38.77029 -22.720958 100.26154 -55.2724590 132.81304
## 2008.750 40.74020 -22.377341 103.85774 -55.7897492 137.27015
## 2008.769 40.07232 -24.632584 104.77723 -58.8852923 139.02993
## 2008.788 40.42907 -25.826697 106.68483 -60.9003783 141.75851
## 2008.808 42.53256 -25.239764 110.30488 -61.1162639 146.18138
## 2008.827 39.76652 -29.490092 109.02312 -66.1523260 145.68536
## 2008.846 36.57567 -34.134799 107.28614 -71.5666607 144.71800
## 2008.865 34.95780 -37.177810 107.09340 -75.3640936 145.27969
## 2008.885 33.89870 -39.634874 107.43228 -78.5611970 146.35860
## 2008.904 30.02134 -44.884465 104.92715 -84.5372050 144.57989
## 2008.923 24.00878 -52.244850 100.26241 -92.6110823 140.62864
## 2008.942 26.10487 -51.473386 103.68312 -92.5408322 144.75056
## 2008.962 24.04085 -54.839952 102.92166 -96.5969282 144.67864
## 2008.981 26.60003 -53.562306 106.76236 -95.9976817 149.19773
## 2009.000 20.26396 -61.159833 101.68776 -104.2629869 144.79091
## 2009.019 21.73695 -60.929146 104.40305 -104.6899345 148.16384
## 2009.038 20.22692 -63.663144 104.11699 -108.0718638 148.52571
## 2009.058 22.86691 -62.229583 107.96340 -107.2769435 153.01076
## 2009.077 24.44585 -61.840230 110.73194 -107.5173239 156.40903
## 2009.096 30.43932 -57.020216 117.89885 -103.3184968 164.19713
## 2009.115 27.57940 -61.038072 116.19687 -107.9493270 163.10812
## 2009.135 27.78822 -61.972268 117.54871 -109.4886021 165.06505
## 2009.154 33.87231 -57.016842 124.76147 -105.1306538 172.87528
## 2009.173 33.40289 -58.601092 125.40688 -107.3050599 174.11085
## 2009.192 30.23673 -62.868750 123.34221 -112.1558135 172.62927
## 2009.212 28.05824 -66.135855 122.25234 -115.9991994 172.11569
## 2009.231 33.42095 -61.849336 128.69124 -112.2823802 179.12429
## 2009.250 32.91579 -63.418667 129.25025 -114.4150501 180.24664
## 2009.269 35.31832 -62.068690 132.70533 -113.6222582 184.25890
## 2009.288 36.12844 -62.299864 134.55675 -114.4046611 186.66154
## 2009.308 31.87583 -67.582873 131.33453 -120.2331301 183.98479
## 2009.327 36.15298 -64.325559 136.63151 -117.5156832 189.82164
## 2009.346 35.30361 -66.184518 136.79173 -119.9090850 190.51630
## 2009.365 38.09294 -64.394832 140.58070 -118.6485781 194.83445
## 2009.385 34.93078 -68.546976 138.40853 -123.3247909 193.18635
## 2009.404 32.63139 -71.826975 137.08975 -127.1238917 192.38666
## 2009.423 33.39801 -72.031834 138.82786 -127.8430244 194.63905
## 2009.442 33.08318 -73.309289 139.47564 -129.6300584 195.79641
## 2009.462 35.56262 -71.783832 142.90907 -128.6096105 199.73485
## 2009.481 33.47323 -74.818805 141.76526 -132.1451453 199.09160
## 2009.500 30.38943 -78.840001 139.61886 -136.6625692 197.44143
## 2009.519 35.29916 -74.859687 145.45802 -133.1742607 203.77259
## 2009.538 34.70529 -76.375210 145.78578 -135.1776732 204.58825
## 2009.558 34.38606 -77.608498 146.38062 -136.8948355 205.66695
## 2009.577 32.95598 -79.945241 145.85719 -139.7115357 205.62349
## 2009.596 35.04645 -78.754205 148.84710 -138.9966329 209.08953
## 2009.615 31.14566 -83.547377 145.83870 -144.2622048 206.55353
## 2009.635 37.05709 -78.521446 152.63562 -139.7050260 213.81920
## 2009.654 34.52776 -81.929535 150.98505 -143.5783033 212.63382
## 2009.673 38.26609 -79.063382 155.59557 -141.1738545 217.70604
## 2009.692 40.66566 -77.529562 158.86088 -140.0983316 221.42965
## 2009.712 37.56466 -81.490012 156.61932 -144.5137466 219.64306
## 2009.731 38.82019 -81.087768 158.72815 -144.5632061 222.20359
## 2009.750 40.78012 -79.975098 161.53534 -143.8990491 225.45929
## 2009.769 40.10426 -81.492318 161.70083 -145.8616558 226.07017
## 2009.788 40.45461 -81.977535 162.88676 -146.7891992 227.69843
## 2009.808 42.55300 -80.709062 165.81506 -145.9600539 231.06605
## 2009.827 39.78287 -84.303552 163.86928 -149.9909342 229.55667
## 2009.846 36.58875 -88.316586 161.49409 -154.4374775 227.61498
## 2009.865 34.96826 -90.750662 160.68718 -157.3022402 227.23876
## 2009.885 33.90707 -92.620204 160.43435 -159.5996990 227.41384
## 2009.904 30.02804 -97.302458 157.35854 -164.7071530 224.76324
## 2009.923 24.01414 -104.114550 152.14282 -171.9417791 219.97005
## 2009.942 26.10915 -102.812779 155.03108 -171.0599273 223.27823
## 2009.962 24.04428 -105.666043 153.75461 -174.3305415 222.41911
## 2009.981 26.60277 -103.891188 157.09673 -172.9705166 226.17605
## 2010.000 20.26616 -111.006752 151.53907 -180.4984334 221.03075
## 2010.019 21.73871 -110.308562 153.78598 -180.2101643 223.68758
## 2010.038 20.22833 -112.588784 153.04544 -182.8979161 223.35457
## 2010.058 22.86803 -110.714490 156.45055 -181.4288051 227.16486
## 2010.077 24.44675 -109.896813 158.79032 -181.0140012 229.90751
## 2010.096 30.44004 -104.660290 165.54036 -176.1780825 237.05815
## 2010.115 27.57997 -108.272896 163.43284 -180.1890612 235.34901
## 2010.135 27.78868 -108.812585 164.38995 -181.1249283 236.70230
## 2010.154 33.87268 -103.472907 171.21827 -176.1792702 243.92463
## 2010.173 33.40319 -104.682709 171.48909 -177.7809669 244.58734
## 2010.192 30.23696 -108.585293 169.05922 -182.0733571 242.54729
## 2010.212 28.05843 -111.496299 167.61317 -185.3721118 241.48898
## 2010.231 33.42110 -106.862279 173.70449 -181.1238164 247.96602
## 2010.250 32.91591 -108.092354 173.92418 -182.7376223 248.56945
## 2010.269 35.31842 -106.411031 177.04786 -181.4380677 252.07490
## 2010.288 36.12852 -106.318455 178.57549 -181.7253271 253.98236
## 2010.308 31.87589 -111.285013 175.03679 -187.0698173 250.82160
autoplot(forecast_stlf.san.juan,
main = "San Juan STLF Forecast",
ylab = " Total cases")

autoplot(sj_train_TS)

San Juan ARIMA
sj_arima <- auto.arima(sj_totalcases)
summary(sj_arima)
## Series: sj_totalcases
## ARIMA(2,0,4)(2,0,0)[52] with non-zero mean
##
## Coefficients:
## ar1 ar2 ma1 ma2 ma3 ma4 sar1 sar2
## 1.8139 -0.8382 -0.9876 0.1820 -0.0331 0.1209 -0.0191 -0.0288
## s.e. 0.0455 0.0430 0.0553 0.0462 0.0432 0.0343 0.0343 0.0360
## mean
## 29.6569
## s.e. 3.1067
##
## sigma^2 = 74.33: log likelihood = -3341.33
## AIC=6702.66 AICc=6702.9 BIC=6751.08
##
## Training set error measures:
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set 0.02307789 8.579806 6.257257 -Inf Inf 0.2043459 -0.00196951
forecast_arima.san.juan <- forecast(sj_arima)
forecast_arima.san.juan
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## 2008.327 27.60492 16.55620491 38.65363 10.7073710 44.50246
## 2008.346 29.46996 15.13726588 43.80265 7.5499971 51.38992
## 2008.365 30.05786 12.96669288 47.14903 3.9191752 56.19655
## 2008.385 31.69813 12.44265181 50.95361 2.2494175 61.14684
## 2008.404 33.28587 11.76078428 54.81096 0.3660923 66.20565
## 2008.423 34.24141 10.49987201 57.98295 -2.0681397 70.55096
## 2008.442 34.82104 9.01845293 60.62363 -4.6406134 74.28270
## 2008.462 35.04640 7.39763552 62.69517 -7.2387378 77.33154
## 2008.481 35.05959 5.80833729 64.31085 -9.6763424 79.79553
## 2008.500 35.61382 5.01098239 66.21665 -11.1891787 82.41681
## 2008.519 35.53817 3.82689697 67.24944 -12.9600358 84.03637
## 2008.538 34.94069 2.34622404 67.53515 -14.9082424 84.78962
## 2008.558 34.68013 1.40341827 67.95684 -16.2122071 85.57246
## 2008.577 34.52806 0.74223752 68.31388 -17.1428948 86.19901
## 2008.596 34.05464 -0.09620936 68.20548 -18.1745746 86.28385
## 2008.615 33.39186 -1.00843340 67.79215 -19.2188488 86.00257
## 2008.635 33.11897 -1.44181461 67.67976 -19.7371890 85.97513
## 2008.654 32.49427 -2.16181392 67.15036 -20.5076389 85.49619
## 2008.673 31.64212 -3.06440205 66.34863 -21.4369232 84.72116
## 2008.692 30.93876 -3.78989434 65.66741 -22.1741324 84.05165
## 2008.712 30.69205 -4.04328263 65.42738 -22.4310554 83.81515
## 2008.731 29.77131 -4.96457373 64.50719 -23.3526399 82.89526
## 2008.750 29.39906 -5.33748545 64.13561 -23.7259035 82.52403
## 2008.769 29.26869 -5.47228062 64.00966 -23.8630396 82.40042
## 2008.788 28.71252 -6.03825627 63.46329 -24.4342039 81.85924
## 2008.808 28.64289 -6.12321235 63.40900 -24.5272764 81.81306
## 2008.827 28.53950 -6.24665846 63.32565 -24.6613367 81.74033
## 2008.846 29.07126 -5.73831897 63.88083 -24.1653954 82.30791
## 2008.865 28.98663 -5.84819365 63.82145 -24.2886344 82.26189
## 2008.885 29.20996 -5.65043741 64.07035 -24.1044164 82.52433
## 2008.904 29.39487 -5.49014511 64.27988 -23.9571543 82.74689
## 2008.923 29.63415 -5.27352223 64.54182 -23.7525277 83.02083
## 2008.942 29.43166 -5.49604985 64.35937 -23.9856628 82.84898
## 2008.962 29.43920 -5.50556528 64.38396 -24.0042062 82.88260
## 2008.981 29.32798 -5.63076564 64.28672 -24.1368070 82.79276
## 2009.000 29.66824 -5.30152983 64.63801 -23.8134088 83.14989
## 2009.019 29.80421 -5.17391006 64.78233 -23.6902095 83.29863
## 2009.038 29.78453 -5.19963652 64.76869 -23.7191352 83.28819
## 2009.058 29.70985 -5.27846838 64.69816 -23.8001639 83.21986
## 2009.077 29.58863 -5.40236065 64.57962 -23.9254708 83.10273
## 2009.096 29.34245 -5.65012113 64.33502 -24.1740686 82.85897
## 2009.115 29.75754 -5.23586336 64.75094 -23.7602503 83.27532
## 2009.135 30.00581 -4.98794445 64.99957 -23.5125211 83.52415
## 2009.154 29.56887 -5.42498826 64.56274 -23.9496198 83.08737
## 2009.173 29.59817 -5.39569662 64.59204 -23.9203318 83.11668
## 2009.192 30.00536 -4.98852372 64.99924 -23.5131665 83.52389
## 2009.212 29.93813 -5.05583833 64.93209 -23.5805249 83.45678
## 2009.231 30.00034 -4.99380256 64.99448 -23.5185828 83.51926
## 2009.250 29.73033 -5.26408885 64.72474 -23.7890133 83.24967
## 2009.269 29.62853 -5.36624134 64.62330 -23.8913527 83.14841
## 2009.288 29.69337 -5.30180827 64.68855 -23.8271366 83.21388
## 2009.308 29.90006 -5.09555463 64.89568 -23.6211160 83.42124
## 2009.327 29.74397 -5.25166390 64.73961 -23.7772342 83.26518
## 2009.346 29.88689 -5.10874539 64.88253 -23.6343157 83.40810
## 2009.365 29.90697 -5.08866726 64.90261 -23.6142387 83.42818
## 2009.385 30.04832 -4.94731764 65.04396 -23.4728905 83.56954
## 2009.404 29.87148 -5.12417868 64.86715 -23.6497638 83.39273
## 2009.423 30.13706 -4.85865938 65.13278 -23.3842731 83.65839
## 2009.442 29.97619 -5.01961152 64.97200 -23.5452711 83.49766
## 2009.462 29.99390 -5.00202008 64.98982 -23.5277404 83.51554
## 2009.481 29.84206 -5.15399658 64.83811 -23.6797886 83.36390
## 2009.500 30.08283 -4.91336673 65.07904 -23.4392366 83.60491
## 2009.519 29.75923 -5.23712119 64.75558 -23.7630704 83.28153
## 2009.538 29.56089 -5.43560241 64.55739 -23.9616283 83.08342
## 2009.558 29.47162 -5.52500814 64.46825 -24.0511051 82.99435
## 2009.577 29.55355 -5.44320080 64.55030 -23.9693608 83.07646
## 2009.596 29.35400 -5.64285070 64.35085 -24.1690646 82.87707
## 2009.615 29.04342 -5.95351958 64.04035 -24.4797778 82.56661
## 2009.635 29.24466 -5.75234227 64.24166 -24.2786356 82.76795
## 2009.654 29.04993 -5.94711779 64.04699 -24.4734379 82.57331
## 2009.673 28.88906 -6.10803149 63.88615 -24.6343710 82.41248
## 2009.692 28.17860 -6.81851586 63.17571 -25.3448688 81.70206
## 2009.712 28.41088 -6.58624803 63.40801 -25.1126097 81.93437
## 2009.731 27.93636 -7.06078394 62.93350 -25.5871508 81.45986
## 2009.750 27.91956 -7.07758798 62.91670 -25.6039576 81.44307
## 2009.769 27.85690 -7.14024361 62.85405 -25.6666144 81.38042
## 2009.788 27.79594 -7.20120397 62.79309 -25.7275752 81.31946
## 2009.808 27.87920 -7.11795322 62.87634 -25.6443245 81.40271
## 2009.827 27.89838 -7.09877183 62.89552 -25.6251431 81.42190
## 2009.846 28.89699 -6.10015466 63.89414 -24.6265262 82.42051
## 2009.865 29.18731 -5.80983570 64.18446 -24.3362077 82.71084
## 2009.885 29.76006 -5.23708887 64.75721 -23.7634617 83.28359
## 2009.904 30.01675 -4.98040429 65.01390 -23.5067782 83.54028
## 2009.923 29.92675 -5.07040920 64.92390 -23.5967844 83.45028
## 2009.942 30.19097 -4.80618524 65.18813 -23.3325618 83.71451
## 2009.962 30.30715 -4.69001062 65.30431 -23.2163885 83.83069
## 2009.981 30.05103 -4.94613543 65.04819 -23.4725147 83.57457
## 2010.000 30.10319 -4.89397880 65.10035 -23.4203593 83.62673
## 2010.019 30.44731 -4.54985642 65.44448 -23.0762380 83.97086
## 2010.038 30.33335 -4.66382388 65.33052 -23.1902064 83.85690
## 2010.058 30.39322 -4.60394885 65.39039 -23.1303321 83.91678
## 2010.077 30.42509 -4.57208412 65.42226 -23.0984680 83.94864
## 2010.096 30.40162 -4.59554899 65.39880 -23.1219333 83.92518
## 2010.115 30.27901 -4.71816200 65.27619 -23.2445467 83.80257
## 2010.135 30.30355 -4.69362164 65.30073 -23.2200065 83.82711
## 2010.154 30.22584 -4.77133878 65.22301 -23.2977238 83.74940
## 2010.173 30.11033 -4.88684850 65.10750 -23.4132336 83.63389
## 2010.192 30.30446 -4.69271440 65.30163 -23.2190996 83.82802
## 2010.212 30.19065 -4.80652722 65.18782 -23.3329124 83.71421
## 2010.231 30.01668 -4.98049631 65.01385 -23.5068815 83.54024
## 2010.250 29.96424 -5.03293066 64.96142 -23.5593159 83.48780
## 2010.269 29.82212 -5.17505761 64.81929 -23.7014428 83.34568
## 2010.288 30.02252 -4.97465926 65.01969 -23.5010445 83.54608
## 2010.308 29.70156 -5.29561546 64.69873 -23.8220007 83.22512
autoplot(forecast_arima.san.juan,
main = "San Juan ARIMA Forecast",
ylab = " Total cases")

San Juan Neural Net
sj_nnetar <- nnetar(sj_totalcases)
forecast_nnetar.san.juan <- forecast(sj_nnetar)
forecast_nnetar.san.juan
## Point Forecast
## 2008.327 36.2000299
## 2008.346 35.3322193
## 2008.365 31.4283585
## 2008.385 36.2107228
## 2008.404 35.5473858
## 2008.423 39.9045658
## 2008.442 39.7729987
## 2008.462 38.2211447
## 2008.481 34.0929437
## 2008.500 37.5204774
## 2008.519 33.2623570
## 2008.538 31.0266257
## 2008.558 25.4723430
## 2008.577 24.5410076
## 2008.596 21.1215744
## 2008.615 22.7088742
## 2008.635 19.8062586
## 2008.654 20.3920841
## 2008.673 18.3669736
## 2008.692 16.7068483
## 2008.712 13.8728482
## 2008.731 10.9602557
## 2008.750 6.4472512
## 2008.769 4.7018211
## 2008.788 3.9930178
## 2008.808 1.7655899
## 2008.827 0.1777719
## 2008.846 -3.3887966
## 2008.865 -6.0187701
## 2008.885 -7.3479702
## 2008.904 -7.5610432
## 2008.923 -7.8425291
## 2008.942 -7.6393454
## 2008.962 -8.1961898
## 2008.981 -6.9693633
## 2009.000 -6.4941971
## 2009.019 -3.2820848
## 2009.038 -2.7812460
## 2009.058 -1.1537588
## 2009.077 0.5311794
## 2009.096 2.4412065
## 2009.115 3.5610269
## 2009.135 5.5783983
## 2009.154 7.0226357
## 2009.173 8.6412323
## 2009.192 11.6405437
## 2009.212 14.5364454
## 2009.231 17.0325393
## 2009.250 19.0769641
## 2009.269 20.2004614
## 2009.288 22.1725090
## 2009.308 23.1989113
## 2009.327 24.0285732
## 2009.346 24.0657476
## 2009.365 25.0628727
## 2009.385 25.1361877
## 2009.404 25.3019026
## 2009.423 25.3160096
## 2009.442 24.7542854
## 2009.462 23.3417651
## 2009.481 22.2353098
## 2009.500 21.3036582
## 2009.519 20.1219777
## 2009.538 19.0335753
## 2009.558 17.9078754
## 2009.577 16.5293597
## 2009.596 15.3786172
## 2009.615 13.9212280
## 2009.635 12.6759063
## 2009.654 11.1693259
## 2009.673 9.7999457
## 2009.692 8.5304556
## 2009.712 7.4305447
## 2009.731 6.4337994
## 2009.750 5.5388829
## 2009.769 4.6780805
## 2009.788 3.9939159
## 2009.808 3.6953968
## 2009.827 3.4166475
## 2009.846 3.9884741
## 2009.865 4.8070464
## 2009.885 5.8046471
## 2009.904 7.0911576
## 2009.923 8.7841846
## 2009.942 10.5769816
## 2009.962 12.8469592
## 2009.981 15.1325912
## 2010.000 18.0240417
## 2010.019 20.9205368
## 2010.038 24.7141823
## 2010.058 28.3402242
## 2010.077 31.9406254
## 2010.096 34.6528019
## 2010.115 36.7867341
## 2010.135 38.2210281
## 2010.154 39.5316574
## 2010.173 39.9503131
## 2010.192 39.8641208
## 2010.212 39.0908331
## 2010.231 38.0472035
## 2010.250 36.0494278
## 2010.269 33.1338739
## 2010.288 29.6061521
## 2010.308 26.6139336
autoplot(forecast_nnetar.san.juan,
main = "San Juan NNETAR Forecast",
ylab = " Total cases")

Tuned Neural Net with Box Cox
lambdasj <- BoxCox.lambda(sj_totalcases)
## Warning in guerrero(x, lower, upper): Guerrero's method for selecting a Box-Cox
## parameter (lambda) is given for strictly positive data.
sj_boxcox_nnetartuned <- nnetar(sj_totalcases, repeats = 15, size = 6, decay = 0.1, linout = TRUE, lambda = lambdasj)
summary(sj_boxcox_nnetartuned)
## Length Class Mode
## x 936 ts numeric
## m 1 -none- numeric
## p 1 -none- numeric
## P 1 -none- numeric
## scalex 2 -none- list
## size 1 -none- numeric
## lambda 1 -none- numeric
## subset 936 -none- numeric
## model 15 nnetarmodels list
## nnetargs 2 -none- list
## fitted 936 ts numeric
## residuals 936 ts numeric
## lags 29 -none- numeric
## series 1 -none- character
## method 1 -none- character
## call 7 -none- call
forecast_tunedboxcoxnnetar_sj <- forecast(sj_boxcox_nnetartuned)
autoplot(forecast_tunedboxcoxnnetar_sj,
main = "NNETAR Box Cox Forecast",
ylab = " Total cases")
##
San Juan Dynamic Arima
sj_train$yearweek<-yearweek(as.Date(sj_train$week_start_date))
sj_train<-as_tsibble(sj_train, index=yearweek)%>%fill_gaps()
sj_test$yearweek<-yearweek(as.Date(sj_test$week_start_date))
sj_internaltrain <- head(sj_train, nrow(sj_train)*0.8)
sj_test<-as_tsibble(sj_test, index=yearweek)%>%fill_gaps()
sj_internaltest <- tail(sj_train, nrow(sj_train)*0.2)
sj_internaltrain <- fill(sj_internaltrain, c( "ndvi_ne","ndvi_nw","ndvi_se", "ndvi_sw","precipitation_amt_mm","reanalysis_air_temp_k" , "reanalysis_avg_temp_k", "reanalysis_dew_point_temp_k","reanalysis_max_air_temp_k","reanalysis_min_air_temp_k", "reanalysis_precip_amt_kg_per_m2","reanalysis_relative_humidity_percent", "reanalysis_sat_precip_amt_mm", "reanalysis_specific_humidity_g_per_kg", "reanalysis_tdtr_k" , "station_avg_temp_c", "station_diur_temp_rng_c", "station_max_temp_c", "station_min_temp_c", "station_precip_mm", "total_cases"), .direction = 'down')
sj_internaltest <- fill(sj_internaltest, c( "ndvi_ne","ndvi_nw","ndvi_se", "ndvi_sw","precipitation_amt_mm","reanalysis_air_temp_k" , "reanalysis_avg_temp_k", "reanalysis_dew_point_temp_k","reanalysis_max_air_temp_k","reanalysis_min_air_temp_k", "reanalysis_precip_amt_kg_per_m2","reanalysis_relative_humidity_percent", "reanalysis_sat_precip_amt_mm", "reanalysis_specific_humidity_g_per_kg", "reanalysis_tdtr_k" , "station_avg_temp_c", "station_diur_temp_rng_c", "station_max_temp_c", "station_min_temp_c", "station_precip_mm"), .direction = 'down')
DynamicArima <- sj_internaltrain |>
model(ARIMA(total_cases ~ reanalysis_air_temp_k + reanalysis_avg_temp_k + reanalysis_dew_point_temp_k + reanalysis_max_air_temp_k + reanalysis_min_air_temp_k + reanalysis_specific_humidity_g_per_kg + station_avg_temp_c + station_min_temp_c + station_max_temp_c + fourier(K=5)))
report(DynamicArima)
## Series: total_cases
## Model: LM w/ ARIMA(2,0,1) errors
##
## Coefficients:
## ar1 ar2 ma1 reanalysis_air_temp_k reanalysis_avg_temp_k
## 1.7506 -0.7648 -0.7241 -3.5821 5.6549
## s.e. 0.1283 0.1222 0.1440 4.5043 4.1928
## reanalysis_dew_point_temp_k reanalysis_max_air_temp_k
## -11.6383 0.7098
## s.e. 5.7126 0.9611
## reanalysis_min_air_temp_k reanalysis_specific_humidity_g_per_kg
## -0.3892 12.1364
## s.e. 0.8798 5.9413
## station_avg_temp_c station_min_temp_c station_max_temp_c
## 3.5749 -1.0386 -0.9803
## s.e. 1.2973 0.5580 0.4902
## fourier(K = 5)C1_52 fourier(K = 5)S1_52 fourier(K = 5)C2_52
## 20.7844 -6.3735 -0.6996
## s.e. 5.5099 5.7192 2.7290
## fourier(K = 5)S2_52 fourier(K = 5)C3_52 fourier(K = 5)S3_52
## -0.5018 1.5991 0.7691
## s.e. 2.7197 1.6883 1.6864
## fourier(K = 5)C4_52 fourier(K = 5)S4_52 fourier(K = 5)C5_52
## 1.2069 -1.0756 0.2243
## s.e. 1.2077 1.2119 0.9434
## fourier(K = 5)S5_52 intercept
## -0.4985 2506.371
## s.e. 0.9418 1549.862
##
## sigma^2 estimated as 109.8: log likelihood=-2819.68
## AIC=5687.35 AICc=5689.01 BIC=5798.27
dynamic_arima_forecast <- DynamicArima %>% forecast(sj_internaltest)
dynamic_arima_forecast %>% autoplot(sj_internaltest) +
labs(title = "San Juan Dynamic ARIMA model") +
xlab("Week") +
ylab("Total Cases")
## Warning: Removed 1 row containing missing values (`()`).
## Warning: Removed 1 row containing missing values (`geom_line()`).

sj_dynamic_forecast <- DynamicArima %>% forecast(sj_internaltest)
sj_dynamic_accuracy <- fabletools::accuracy(sj_dynamic_forecast, sj_internaltest)
sj_dynamic_accuracy
## # A tibble: 1 × 10
## .model .type ME RMSE MAE MPE MAPE MASE RMSSE ACF1
## <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 "ARIMA(total_cases ~ re… Test -7.39 25.6 18.7 -Inf Inf NaN NaN 0.848
write.csv(sj_dynamic_accuracy, file='sj_accuracymetrics.csv', row.names = FALSE)
San Juan Accuracy Metrics
forecast_list <- list(
sj_ets = forecast_ets.san.juan,
sj_stlf = forecast_stlf.san.juan,
sj_arima = forecast_arima.san.juan,
sj_nnetar = forecast_nnetar.san.juan,
sj_boxcox_nnetar = forecast_boxcoxnnetar_sj,
sj_tuned_boxcox = forecast_tunedboxcoxnnetar_sj)
accuracy_table <- data.table(Model = character(0), RMSE = numeric(0), MAE = numeric(0))
dynamic_arima_results <- data.table(Model = "Dynamic ARIMA", RMSE = 43.2, MAE = 35.0)
accuracy_table <- rbind(accuracy_table, dynamic_arima_results)
for (model_name in names(forecast_list)) {
forecast_object <- forecast_list[[model_name]]
accuracy <- accuracy(forecast_object)
accuracy_table <- rbind(accuracy_table, data.table(Model = model_name, RMSE = accuracy[1, "RMSE"], MAE = accuracy[1, "MAE"]))
}
accuracy_table <- accuracy_table %>% arrange(RMSE)
sj_accuracy_table <- kable(accuracy_table, format = "markdown", caption = "Summary of Accuracy Metrics for Forecast Models")
sj_accuracy_table
Summary of Accuracy Metrics for Forecast Models
| sj_boxcox_nnetar |
3.124856 |
1.818409 |
| sj_nnetar |
3.243657 |
2.251030 |
| sj_tuned_boxcox |
6.845731 |
4.706217 |
| sj_stlf |
8.183322 |
5.927194 |
| sj_arima |
8.579806 |
6.257257 |
| sj_ets |
8.905544 |
6.372582 |
| Dynamic ARIMA |
43.200000 |
35.000000 |
Best Model for SJ: BoxCox NNETAR
sj_boxcox_nnetar <- nnetar(sj_totalcases, lambda = lambdasj)
summary(sj_boxcox_nnetar)
## Length Class Mode
## x 936 ts numeric
## m 1 -none- numeric
## p 1 -none- numeric
## P 1 -none- numeric
## scalex 2 -none- list
## size 1 -none- numeric
## lambda 1 -none- numeric
## subset 936 -none- numeric
## model 20 nnetarmodels list
## nnetargs 0 -none- list
## fitted 936 ts numeric
## residuals 936 ts numeric
## lags 29 -none- numeric
## series 1 -none- character
## method 1 -none- character
## call 3 -none- call
forecast_test_boxcoxnnetar_sj <- forecast(sj_boxcox_nnetar, newdata = sj_test_TS)
autoplot(forecast_test_boxcoxnnetar_sj,
main = "NNETAR Box Cox Forecast",
ylab = " Total cases")

Iquitos Total Cases and Decomposition Plot
iq_totalcases <- tsclean(ts(iq_train$total_cases, start = 2000, frequency = 52))
autoplot(iq_totalcases)+
ggtitle("Iquitos Total Casses")+
ylab("Dengue Cases")+
xlab("Time") +
theme_linedraw()

iq_totalcases %>%
decompose(type = c("additive")) %>%
autoplot() +
ggtitle("Decomposition of Iquitos Training Data")

Iquitos ETS
iq_ets <- ets(iq_totalcases)
## Warning in ets(iq_totalcases): I can't handle data with frequency greater than
## 24. Seasonality will be ignored. Try stlf() if you need seasonal forecasts.
summary(iq_ets)
## ETS(A,N,N)
##
## Call:
## ets(y = iq_totalcases)
##
## Smoothing parameters:
## alpha = 0.578
##
## Initial states:
## l = 0.076
##
## sigma: 3.9037
##
## AIC AICc BIC
## 4195.737 4195.789 4208.208
##
## Training set error measures:
## ME RMSE MAE MPE MAPE MASE ACF1
## Training set 0.01136145 3.895382 2.695285 -Inf Inf 0.3740204 0.01884672
forecast_ets.iquitos <- forecast(iq_ets)
forecast_ets.iquitos
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## 2009.077 3.175466 -1.827277 8.178209 -4.475569 10.82650
## 2009.096 3.175466 -2.602779 8.953711 -5.661597 12.01253
## 2009.115 3.175466 -3.285864 9.636796 -6.706285 13.05722
## 2009.135 3.175466 -3.903337 10.254269 -7.650629 14.00156
## 2009.154 3.175466 -4.471110 10.822042 -8.518963 14.86989
## 2009.173 3.175466 -4.999545 11.350477 -9.327134 15.67807
## 2009.192 3.175466 -5.495836 11.846768 -10.086145 16.43708
## 2009.212 3.175466 -5.965220 12.316152 -10.804007 17.15494
## 2009.231 3.175466 -6.411651 12.762583 -11.486764 17.83770
## 2009.250 3.175466 -6.838199 13.189131 -12.139113 18.49004
## 2009.269 3.175466 -7.247305 13.598237 -12.764787 19.11572
## 2009.288 3.175466 -7.640949 13.991881 -13.366813 19.71774
## 2009.308 3.175466 -8.020761 14.371693 -13.947686 20.29862
## 2009.327 3.175466 -8.388105 14.739037 -14.509490 20.86042
## 2009.346 3.175466 -8.744133 15.095065 -15.053988 21.40492
## 2009.365 3.175466 -9.089831 15.440763 -15.582687 21.93362
## 2009.385 3.175466 -9.426049 15.776981 -16.096889 22.44782
## 2009.404 3.175466 -9.753527 16.104459 -16.597722 22.94865
## 2009.423 3.175466 -10.072912 16.423844 -17.086180 23.43711
## 2009.442 3.175466 -10.384778 16.735710 -17.563137 23.91407
## 2009.462 3.175466 -10.689630 17.040562 -18.029368 24.38030
## 2009.481 3.175466 -10.987922 17.338854 -18.485566 24.83650
## 2009.500 3.175466 -11.280060 17.630992 -18.932353 25.28328
## 2009.519 3.175466 -11.566409 17.917341 -19.370287 25.72122
## 2009.538 3.175466 -11.847302 18.198234 -19.799875 26.15081
## 2009.558 3.175466 -12.123038 18.473970 -20.221577 26.57251
## 2009.577 3.175466 -12.393892 18.744824 -20.635812 26.98674
## 2009.596 3.175466 -12.660114 19.011046 -21.042963 27.39389
## 2009.615 3.175466 -12.921933 19.272865 -21.443381 27.79431
## 2009.635 3.175466 -13.179561 19.530493 -21.837390 28.18832
## 2009.654 3.175466 -13.433194 19.784126 -22.225288 28.57622
## 2009.673 3.175466 -13.683012 20.033944 -22.607351 28.95828
## 2009.692 3.175466 -13.929181 20.280113 -22.983834 29.33477
## 2009.712 3.175466 -14.171857 20.522789 -23.354975 29.70591
## 2009.731 3.175466 -14.411185 20.762117 -23.720995 30.07193
## 2009.750 3.175466 -14.647299 20.998231 -24.082101 30.43303
## 2009.769 3.175466 -14.880326 21.231258 -24.438485 30.78942
## 2009.788 3.175466 -15.110384 21.461316 -24.790328 31.14126
## 2009.808 3.175466 -15.337583 21.688515 -25.137799 31.48873
## 2009.827 3.175466 -15.562027 21.912959 -25.481057 31.83199
## 2009.846 3.175466 -15.783814 22.134746 -25.820251 32.17118
## 2009.865 3.175466 -16.003037 22.353969 -26.155524 32.50646
## 2009.885 3.175466 -16.219782 22.570714 -26.487007 32.83794
## 2009.904 3.175466 -16.434132 22.785064 -26.814826 33.16576
## 2009.923 3.175466 -16.646164 22.997096 -27.139100 33.49003
## 2009.942 3.175466 -16.855951 23.206883 -27.459943 33.81087
## 2009.962 3.175466 -17.063564 23.414496 -27.777460 34.12839
## 2009.981 3.175466 -17.269069 23.620001 -28.091752 34.44268
## 2010.000 3.175466 -17.472529 23.823461 -28.402917 34.75385
## 2010.019 3.175466 -17.674003 24.024935 -28.711045 35.06198
## 2010.038 3.175466 -17.873549 24.224481 -29.016224 35.36716
## 2010.058 3.175466 -18.071221 24.422153 -29.318538 35.66947
## 2010.077 3.175466 -18.267071 24.618003 -29.618064 35.96900
## 2010.096 3.175466 -18.461148 24.812080 -29.914879 36.26581
## 2010.115 3.175466 -18.653499 25.004431 -30.209055 36.55999
## 2010.135 3.175466 -18.844170 25.195102 -30.500662 36.85159
## 2010.154 3.175466 -19.033205 25.384137 -30.789765 37.14070
## 2010.173 3.175466 -19.220644 25.571576 -31.076428 37.42736
## 2010.192 3.175466 -19.406527 25.757459 -31.360712 37.71164
## 2010.212 3.175466 -19.590892 25.941824 -31.642675 37.99361
## 2010.231 3.175466 -19.773777 26.124709 -31.922372 38.27330
## 2010.250 3.175466 -19.955215 26.306147 -32.199858 38.55079
## 2010.269 3.175466 -20.135242 26.486174 -32.475185 38.82612
## 2010.288 3.175466 -20.313888 26.664820 -32.748401 39.09933
## 2010.308 3.175466 -20.491186 26.842118 -33.019555 39.37049
## 2010.327 3.175466 -20.667166 27.018098 -33.288693 39.63963
## 2010.346 3.175466 -20.841857 27.192789 -33.555859 39.90679
## 2010.365 3.175466 -21.015285 27.366217 -33.821096 40.17203
## 2010.385 3.175466 -21.187480 27.538412 -34.084444 40.43538
## 2010.404 3.175466 -21.358466 27.709398 -34.345944 40.69688
## 2010.423 3.175466 -21.528268 27.879200 -34.605635 40.95657
## 2010.442 3.175466 -21.696911 28.047843 -34.863552 41.21448
## 2010.462 3.175466 -21.864418 28.215350 -35.119733 41.47066
## 2010.481 3.175466 -22.030813 28.381745 -35.374211 41.72514
## 2010.500 3.175466 -22.196116 28.547048 -35.627020 41.97795
## 2010.519 3.175466 -22.360349 28.711281 -35.878192 42.22912
## 2010.538 3.175466 -22.523532 28.874464 -36.127760 42.47869
## 2010.558 3.175466 -22.685686 29.036618 -36.375753 42.72668
## 2010.577 3.175466 -22.846829 29.197761 -36.622200 42.97313
## 2010.596 3.175466 -23.006981 29.357913 -36.867131 43.21806
## 2010.615 3.175466 -23.166159 29.517091 -37.110572 43.46150
## 2010.635 3.175466 -23.324380 29.675312 -37.352552 43.70348
## 2010.654 3.175466 -23.481663 29.832595 -37.593095 43.94403
## 2010.673 3.175466 -23.638023 29.988955 -37.832227 44.18316
## 2010.692 3.175466 -23.793477 30.144409 -38.069973 44.42090
## 2010.712 3.175466 -23.948039 30.298971 -38.306356 44.65729
## 2010.731 3.175466 -24.101726 30.452658 -38.541400 44.89233
## 2010.750 3.175466 -24.254552 30.605484 -38.775126 45.12606
## 2010.769 3.175466 -24.406531 30.757463 -39.007558 45.35849
## 2010.788 3.175466 -24.557677 30.908609 -39.238716 45.58965
## 2010.808 3.175466 -24.708004 31.058936 -39.468622 45.81955
## 2010.827 3.175466 -24.857525 31.208457 -39.697294 46.04823
## 2010.846 3.175466 -25.006252 31.357184 -39.924753 46.27568
## 2010.865 3.175466 -25.154199 31.505131 -40.151018 46.50195
## 2010.885 3.175466 -25.301377 31.652309 -40.376107 46.72704
## 2010.904 3.175466 -25.447798 31.798730 -40.600039 46.95097
## 2010.923 3.175466 -25.593474 31.944406 -40.822832 47.17376
## 2010.942 3.175466 -25.738417 32.089349 -41.044502 47.39543
## 2010.962 3.175466 -25.882636 32.233568 -41.265066 47.61600
## 2010.981 3.175466 -26.026143 32.377075 -41.484541 47.83547
## 2011.000 3.175466 -26.168948 32.519880 -41.702942 48.05387
## 2011.019 3.175466 -26.311061 32.661993 -41.920286 48.27122
## 2011.038 3.175466 -26.452493 32.803425 -42.136587 48.48752
## 2011.058 3.175466 -26.593253 32.944185 -42.351861 48.70279
autoplot(forecast_ets.iquitos,
main = "Iquitos ETS Forecast",
ylab = " Total cases")

Iquitos STLF
iq_stlf <- stlf(iq_totalcases)
summary(iq_totalcases)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.000 1.000 5.000 6.314 9.000 27.445
forecast_stlf.iquitos <- forecast(iq_stlf)
forecast_stlf.iquitos
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## 2009.077 1.97841844 -2.523246 6.480083 -4.906283 8.863120
## 2009.096 1.85529651 -3.375208 7.085801 -6.144070 9.854663
## 2009.115 0.65527931 -5.214250 6.524808 -8.321391 9.631949
## 2009.135 -0.14129729 -6.586805 6.304210 -9.998850 9.716256
## 2009.154 -0.01329467 -6.987372 6.960783 -10.679226 10.652637
## 2009.173 0.69382445 -6.771492 8.159141 -10.723392 12.111041
## 2009.192 0.13392915 -7.792240 8.060098 -11.988100 12.255958
## 2009.212 -0.66253382 -9.024193 7.699125 -13.450588 12.125520
## 2009.231 -1.17788513 -9.953450 7.597680 -14.598954 12.243183
## 2009.250 -0.20179551 -9.372604 8.969013 -14.227337 13.823746
## 2009.269 0.75898921 -8.790719 10.308698 -13.846029 15.364008
## 2009.288 0.29250906 -9.621629 10.206647 -14.869856 15.454874
## 2009.308 -0.92656618 -11.192204 9.339072 -16.626504 14.773372
## 2009.327 0.39949423 -10.206000 11.004989 -15.820210 16.619198
## 2009.346 -1.45825047 -12.393044 9.476543 -18.181574 15.265073
## 2009.365 -2.24688987 -13.501351 9.007572 -19.459103 14.965324
## 2009.385 -0.89932676 -12.464624 10.665970 -18.586922 16.788269
## 2009.404 0.61331068 -11.254684 12.481305 -17.537221 18.763842
## 2009.423 -0.95396098 -13.117122 11.209200 -19.555911 17.647989
## 2009.442 2.56522487 -9.886108 15.016557 -16.477445 21.607895
## 2009.462 0.91624019 -11.816744 13.649224 -18.557178 20.389659
## 2009.481 1.55512187 -11.453417 14.563660 -18.339721 21.449965
## 2009.500 1.83623754 -11.442138 15.114613 -18.471286 22.143761
## 2009.519 1.42642760 -12.116410 14.969266 -19.285556 22.138411
## 2009.538 0.18085827 -13.621376 13.983092 -20.927837 21.289553
## 2009.558 0.22675683 -13.830087 14.283600 -21.271330 21.724844
## 2009.577 0.22405353 -14.082870 14.530977 -21.656497 22.104604
## 2009.596 -0.44579646 -14.998502 14.106909 -22.702239 21.810646
## 2009.615 -1.99154448 -16.785950 12.802861 -24.617635 20.634546
## 2009.635 1.46644502 -13.565775 16.498665 -21.523351 24.456241
## 2009.654 2.06559220 -13.200738 17.331922 -21.282244 25.413429
## 2009.673 0.06276833 -15.434135 15.559672 -23.637701 23.763237
## 2009.692 1.06464928 -14.659447 16.788746 -22.983281 25.112580
## 2009.712 2.39051988 -13.557534 18.338573 -21.999923 26.780963
## 2009.731 4.90078710 -11.268122 21.069696 -19.827425 29.628999
## 2009.750 1.18437284 -15.202415 17.571160 -23.877056 26.245801
## 2009.769 2.89713311 -13.704674 19.498940 -22.493140 28.287406
## 2009.788 3.63444829 -13.179629 20.448525 -22.080464 29.349360
## 2009.808 7.14669368 -9.877007 24.170394 -18.888810 33.182197
## 2009.827 6.19871480 -11.032059 23.429489 -20.153480 32.550910
## 2009.846 4.17001804 -13.265371 21.605407 -22.495108 30.835144
## 2009.865 0.80483716 -16.832792 18.442467 -26.169589 27.779264
## 2009.885 3.92915900 -13.908418 21.766736 -23.351061 31.209379
## 2009.904 2.05460512 -15.980704 20.089914 -25.528019 29.637230
## 2009.923 6.38021972 -11.850676 24.611115 -21.501529 34.261968
## 2009.942 3.53619262 -14.888214 21.960599 -24.641505 31.713891
## 2009.962 3.31967809 -15.296228 21.935584 -25.150893 31.790249
## 2009.981 3.90502044 -14.900435 22.710475 -24.855441 32.665482
## 2010.000 4.50341283 -14.489700 23.496526 -24.544047 33.550872
## 2010.019 6.17887505 -13.000059 25.357810 -23.152774 35.510524
## 2010.038 2.05245829 -17.310515 21.415431 -27.560653 31.665570
## 2010.058 3.01697231 -16.528306 22.562251 -26.874952 32.908897
## 2010.077 1.97841844 -17.747481 21.704318 -28.189742 32.146578
## 2010.096 1.85529651 -18.049585 21.760178 -28.586593 32.297186
## 2010.115 0.65527931 -19.426989 20.737548 -30.057900 31.368458
## 2010.135 -0.14129729 -20.399399 20.116805 -31.123391 30.840796
## 2010.154 -0.01329467 -20.445717 20.419128 -31.261988 31.235399
## 2010.173 0.69382445 -19.911444 21.299093 -30.819214 32.206863
## 2010.192 0.13392915 -20.642747 20.910606 -31.641255 31.909114
## 2010.212 -0.66253382 -21.609216 20.284148 -32.697719 31.372651
## 2010.231 -1.17788513 -22.293204 19.937433 -33.470978 31.115208
## 2010.250 -0.20179551 -21.484414 21.080823 -32.750752 32.347161
## 2010.269 0.75898921 -20.689625 22.207604 -32.043836 33.561814
## 2010.288 0.29250906 -21.320826 21.905844 -32.762235 33.347253
## 2010.308 -0.92656618 -22.703376 20.850244 -34.231323 32.378191
## 2010.327 0.39949423 -21.539572 22.338561 -33.153413 33.952401
## 2010.346 -1.45825047 -23.558383 20.641882 -35.257486 32.340985
## 2010.365 -2.24688987 -24.506922 20.013142 -36.290671 31.796892
## 2010.385 -0.89932676 -23.318119 21.519465 -35.185910 33.387257
## 2010.404 0.61331068 -21.963125 23.189746 -33.914367 35.140989
## 2010.423 -0.95396098 -23.686946 21.779024 -35.721062 33.813140
## 2010.442 2.56522487 -20.323240 25.453690 -32.439661 37.570111
## 2010.462 0.91624019 -22.126655 23.959135 -34.324827 36.157307
## 2010.481 1.55512187 -21.641175 24.751419 -33.920553 37.030797
## 2010.500 1.83623754 -21.512454 25.184929 -33.872505 37.544980
## 2010.519 1.42642760 -22.073670 24.926525 -34.513870 37.366726
## 2010.538 0.18085827 -23.469676 23.831393 -35.989513 36.351230
## 2010.558 0.22675683 -23.573264 24.026778 -36.172234 36.625747
## 2010.577 0.22405353 -23.724520 24.172627 -36.402129 36.850236
## 2010.596 -0.44579646 -24.542007 23.650414 -37.297771 36.406178
## 2010.615 -1.99154448 -26.234493 22.251404 -39.067935 35.084846
## 2010.635 1.46644502 -22.922359 25.855249 -35.833012 38.765902
## 2010.654 2.06559220 -22.468200 26.599384 -35.455605 39.586789
## 2010.673 0.06276833 -24.615160 24.740697 -37.678866 37.804403
## 2010.692 1.06464928 -23.756578 25.885877 -36.896143 39.025441
## 2010.712 2.39051988 -22.573185 27.354224 -35.788172 40.569211
## 2010.731 4.90078710 -20.204586 30.006160 -33.494567 43.296141
## 2010.750 1.18437284 -24.061873 26.430619 -37.426428 39.795174
## 2010.769 2.89713311 -22.489204 28.283471 -35.927920 41.722186
## 2010.788 3.63444829 -21.891212 29.160108 -35.403680 42.672577
## 2010.808 7.14669368 -18.517533 32.810920 -32.103354 46.396741
## 2010.827 6.19871480 -19.603334 32.000763 -33.262113 45.659543
## 2010.846 4.17001804 -21.769120 30.109157 -35.500471 43.840507
## 2010.865 0.80483716 -25.270671 26.880345 -39.074211 40.683885
## 2010.885 3.92915900 -22.282008 30.140326 -36.157362 44.015680
## 2010.904 2.05460512 -24.291523 28.400734 -38.238321 42.347532
## 2010.923 6.38021972 -20.100182 32.860622 -34.118060 46.878500
## 2010.942 3.53619262 -23.077805 30.150190 -37.166405 44.238790
## 2010.962 3.31967809 -23.427248 30.066605 -37.586216 44.225572
## 2010.981 3.90502044 -22.974177 30.784218 -37.203165 45.013206
## 2011.000 4.50341283 -22.507408 31.514234 -36.806074 45.812899
## 2011.019 6.17887505 -20.962931 33.320682 -35.330936 47.688686
## 2011.038 2.05245829 -25.219704 29.324621 -39.656715 43.761632
## 2011.058 3.01697231 -24.384926 30.418871 -38.890615 44.924560
autoplot(forecast_stlf.iquitos,
main = "Iquitos STLF Forecast",
ylab = " Total cases")

Iquitos ARIMA
iq_arima <- auto.arima(iq_totalcases)
summary(iq_totalcases)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.000 1.000 5.000 6.314 9.000 27.445
forecast_arima.iquitos <- forecast(iq_arima)
forecast_arima.iquitos
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## 2009.077 3.175521 -1.827223 8.178264 -4.475515 10.82656
## 2009.096 3.175521 -2.605099 8.956141 -5.665175 12.01622
## 2009.115 3.175521 -3.290057 9.641098 -6.712727 13.06377
## 2009.135 3.175521 -3.909098 10.260140 -7.659469 14.01051
## 2009.154 3.175521 -4.478233 10.829275 -8.529886 14.88093
## 2009.173 3.175521 -5.007882 11.358923 -9.339914 15.69096
## 2009.192 3.175521 -5.505275 11.856316 -10.100610 16.45165
## 2009.212 3.175521 -5.975672 12.326714 -10.820021 17.17106
## 2009.231 3.175521 -6.423045 12.774086 -11.504219 17.85526
## 2009.250 3.175521 -6.850475 13.201516 -12.157917 18.50896
## 2009.269 3.175521 -7.260413 13.611455 -12.784863 19.13590
## 2009.288 3.175521 -7.654846 14.005888 -13.388096 19.73914
## 2009.308 3.175521 -8.035410 14.386452 -13.970119 20.32116
## 2009.327 3.175521 -8.403473 14.754515 -14.533023 20.88406
## 2009.346 3.175521 -8.760192 15.111233 -15.078576 21.42962
## 2009.365 3.175521 -9.106554 15.457595 -15.608292 21.95933
## 2009.385 3.175521 -9.443413 15.794454 -16.123473 22.47451
## 2009.404 3.175521 -9.771510 16.122552 -16.625255 22.97630
## 2009.423 3.175521 -10.091496 16.442538 -17.114631 23.46567
## 2009.442 3.175521 -10.403944 16.754986 -17.592479 23.94352
## 2009.462 3.175521 -10.709363 17.060404 -18.059577 24.41062
## 2009.481 3.175521 -11.008207 17.359248 -18.516619 24.86766
## 2009.500 3.175521 -11.300883 17.651924 -18.964228 25.31527
## 2009.519 3.175521 -11.587757 17.938799 -19.402965 25.75401
## 2009.538 3.175521 -11.869163 18.220204 -19.833338 26.18438
## 2009.558 3.175521 -12.145401 18.496442 -20.255807 26.60685
## 2009.577 3.175521 -12.416746 18.767787 -20.670793 27.02183
## 2009.596 3.175521 -12.683448 19.034490 -21.078679 27.42972
## 2009.615 3.175521 -12.945739 19.296781 -21.479819 27.83086
## 2009.635 3.175521 -13.203831 19.554872 -21.874535 28.22558
## 2009.654 3.175521 -13.457918 19.808959 -22.263128 28.61417
## 2009.673 3.175521 -13.708182 20.059223 -22.645874 28.99692
## 2009.692 3.175521 -13.954790 20.305831 -23.023028 29.37407
## 2009.712 3.175521 -14.197898 20.548939 -23.394830 29.74587
## 2009.731 3.175521 -14.437650 20.788692 -23.761500 30.11254
## 2009.750 3.175521 -14.674183 21.025224 -24.123245 30.47429
## 2009.769 3.175521 -14.907622 21.258663 -24.480259 30.83130
## 2009.788 3.175521 -15.138086 21.489127 -24.832723 31.18376
## 2009.808 3.175521 -15.365685 21.716726 -25.180806 31.53185
## 2009.827 3.175521 -15.590524 21.941565 -25.524668 31.87571
## 2009.846 3.175521 -15.812701 22.163742 -25.864458 32.21550
## 2009.865 3.175521 -16.032308 22.383349 -26.200318 32.55136
## 2009.885 3.175521 -16.249433 22.600474 -26.532382 32.88342
## 2009.904 3.175521 -16.464157 22.815198 -26.860774 33.21182
## 2009.923 3.175521 -16.676559 23.027600 -27.185615 33.53666
## 2009.942 3.175521 -16.886712 23.237754 -27.507017 33.85806
## 2009.962 3.175521 -17.094687 23.445728 -27.825087 34.17613
## 2009.981 3.175521 -17.300550 23.651591 -28.139926 34.49097
## 2010.000 3.175521 -17.504363 23.855404 -28.451632 34.80267
## 2010.019 3.175521 -17.706187 24.057228 -28.760295 35.11134
## 2010.038 3.175521 -17.906079 24.257120 -29.066003 35.41704
## 2010.058 3.175521 -18.104093 24.455134 -29.368840 35.71988
## 2010.077 3.175521 -18.300282 24.651323 -29.668885 36.01993
## 2010.096 3.175521 -18.494694 24.845736 -29.966213 36.31725
## 2010.115 3.175521 -18.687378 25.038420 -30.260898 36.61194
## 2010.135 3.175521 -18.878379 25.229420 -30.553008 36.90405
## 2010.154 3.175521 -19.067739 25.418780 -30.842609 37.19365
## 2010.173 3.175521 -19.255501 25.606542 -31.129766 37.48081
## 2010.192 3.175521 -19.441704 25.792745 -31.414540 37.76558
## 2010.212 3.175521 -19.626387 25.977428 -31.696987 38.04803
## 2010.231 3.175521 -19.809586 26.160627 -31.977166 38.32821
## 2010.250 3.175521 -19.991336 26.342377 -32.255129 38.60617
## 2010.269 3.175521 -20.171671 26.522713 -32.530928 38.88197
## 2010.288 3.175521 -20.350624 26.701666 -32.804613 39.15565
## 2010.308 3.175521 -20.528226 26.879268 -33.076232 39.42727
## 2010.327 3.175521 -20.704508 27.055549 -33.345831 39.69687
## 2010.346 3.175521 -20.879497 27.230538 -33.613454 39.96450
## 2010.365 3.175521 -21.053223 27.404264 -33.879145 40.23019
## 2010.385 3.175521 -21.225712 27.576753 -34.142944 40.49399
## 2010.404 3.175521 -21.396990 27.748031 -34.404891 40.75593
## 2010.423 3.175521 -21.567082 27.918123 -34.665025 41.01607
## 2010.442 3.175521 -21.736013 28.087055 -34.923383 41.27442
## 2010.462 3.175521 -21.903806 28.254848 -35.180000 41.53104
## 2010.481 3.175521 -22.070484 28.421526 -35.434912 41.78595
## 2010.500 3.175521 -22.236069 28.587111 -35.688152 42.03919
## 2010.519 3.175521 -22.400582 28.751623 -35.939753 42.29079
## 2010.538 3.175521 -22.564043 28.915085 -36.189746 42.54079
## 2010.558 3.175521 -22.726473 29.077515 -36.438160 42.78920
## 2010.577 3.175521 -22.887891 29.238932 -36.685027 43.03607
## 2010.596 3.175521 -23.048315 29.399356 -36.930375 43.28142
## 2010.615 3.175521 -23.207763 29.558805 -37.174230 43.52527
## 2010.635 3.175521 -23.366254 29.717295 -37.416621 43.76766
## 2010.654 3.175521 -23.523804 29.874845 -37.657572 44.00861
## 2010.673 3.175521 -23.680429 30.031471 -37.897111 44.24815
## 2010.692 3.175521 -23.836147 30.187188 -38.135260 44.48630
## 2010.712 3.175521 -23.990972 30.342013 -38.372044 44.72309
## 2010.731 3.175521 -24.144919 30.495961 -38.607487 44.95853
## 2010.750 3.175521 -24.298004 30.649045 -38.841610 45.19265
## 2010.769 3.175521 -24.450241 30.801282 -39.074435 45.42548
## 2010.788 3.175521 -24.601643 30.952684 -39.305985 45.65703
## 2010.808 3.175521 -24.752224 31.103266 -39.536280 45.88732
## 2010.827 3.175521 -24.901998 31.253040 -39.765339 46.11638
## 2010.846 3.175521 -25.050978 31.402019 -39.993183 46.34422
## 2010.865 3.175521 -25.199175 31.550216 -40.219831 46.57087
## 2010.885 3.175521 -25.346602 31.697643 -40.445301 46.79634
## 2010.904 3.175521 -25.493271 31.844312 -40.669612 47.02065
## 2010.923 3.175521 -25.639193 31.990234 -40.892781 47.24382
## 2010.942 3.175521 -25.784380 32.135421 -41.114825 47.46587
## 2010.962 3.175521 -25.928843 32.279884 -41.335762 47.68680
## 2010.981 3.175521 -26.072592 32.423633 -41.555608 47.90665
## 2011.000 3.175521 -26.215638 32.566680 -41.774378 48.12542
## 2011.019 3.175521 -26.357992 32.709033 -41.992089 48.34313
## 2011.038 3.175521 -26.499662 32.850704 -42.208755 48.55980
## 2011.058 3.175521 -26.640660 32.991701 -42.424392 48.77543
autoplot(forecast_arima.iquitos,
main = "Iquitos ARIMA Forecast",
ylab = " Total cases")

Iquitos Neural Net
iq_nnetar <- nnetar(iq_totalcases)
summary(iq_nnetar)
## Length Class Mode
## x 472 ts numeric
## m 1 -none- numeric
## p 1 -none- numeric
## P 1 -none- numeric
## scalex 2 -none- list
## size 1 -none- numeric
## subset 472 -none- numeric
## model 20 nnetarmodels list
## nnetargs 0 -none- list
## fitted 472 ts numeric
## residuals 472 ts numeric
## lags 4 -none- numeric
## series 1 -none- character
## method 1 -none- character
## call 2 -none- call
forecast_nnetar.iquitos <- forecast(iq_nnetar)
forecast_nnetar.iquitos
## Point Forecast
## 2009.077 3.459989
## 2009.096 3.894122
## 2009.115 4.251521
## 2009.135 4.681936
## 2009.154 5.107306
## 2009.173 5.398737
## 2009.192 5.865967
## 2009.212 6.233277
## 2009.231 6.355776
## 2009.250 6.430006
## 2009.269 6.400917
## 2009.288 6.570932
## 2009.308 6.890519
## 2009.327 7.099004
## 2009.346 7.319888
## 2009.365 7.692673
## 2009.385 7.807187
## 2009.404 8.063759
## 2009.423 8.242938
## 2009.442 8.311322
## 2009.462 8.412876
## 2009.481 8.419370
## 2009.500 7.999093
## 2009.519 8.111051
## 2009.538 8.060416
## 2009.558 8.100699
## 2009.577 8.117892
## 2009.596 8.371443
## 2009.615 8.573797
## 2009.635 8.045666
## 2009.654 7.293142
## 2009.673 6.895978
## 2009.692 6.831833
## 2009.712 6.534742
## 2009.731 5.876191
## 2009.750 5.686872
## 2009.769 5.580148
## 2009.788 5.399288
## 2009.808 5.015052
## 2009.827 5.206880
## 2009.846 5.532784
## 2009.865 5.553425
## 2009.885 5.533665
## 2009.904 5.859217
## 2009.923 6.170313
## 2009.942 6.044249
## 2009.962 6.178479
## 2009.981 6.325584
## 2010.000 6.202894
## 2010.019 6.728848
## 2010.038 6.978930
## 2010.058 7.009233
## 2010.077 7.205371
## 2010.096 7.313156
## 2010.115 7.399046
## 2010.135 7.462855
## 2010.154 7.497606
## 2010.173 7.518857
## 2010.192 7.509317
## 2010.212 7.485764
## 2010.231 7.464971
## 2010.250 7.442140
## 2010.269 7.425243
## 2010.288 7.395709
## 2010.308 7.349856
## 2010.327 7.301700
## 2010.346 7.245485
## 2010.365 7.171033
## 2010.385 7.103843
## 2010.404 7.023523
## 2010.423 6.941541
## 2010.442 6.863864
## 2010.462 6.783685
## 2010.481 6.709975
## 2010.500 6.670487
## 2010.519 6.611469
## 2010.538 6.564336
## 2010.558 6.515781
## 2010.577 6.468996
## 2010.596 6.407253
## 2010.615 6.341902
## 2010.635 6.323352
## 2010.654 6.342694
## 2010.673 6.368318
## 2010.692 6.389193
## 2010.712 6.431313
## 2010.731 6.510864
## 2010.750 6.580340
## 2010.769 6.651748
## 2010.788 6.731832
## 2010.808 6.831195
## 2010.827 6.899697
## 2010.846 6.948630
## 2010.865 7.004272
## 2010.885 7.056960
## 2010.904 7.081261
## 2010.923 7.091959
## 2010.942 7.120350
## 2010.962 7.130837
## 2010.981 7.134283
## 2011.000 7.151752
## 2011.019 7.123378
## 2011.038 7.095240
## 2011.058 7.072924
autoplot(forecast_nnetar.iquitos,
main = "Iquitos NNETAR Forecast",
ylab = " Total cases")

IQ Dynamic ARIMA
iq_train$yearweek<-yearweek(as.Date(iq_train$week_start_date))
iq_train<-as_tsibble(iq_train, index=yearweek)%>%fill_gaps()
iq_test$yearweek<-yearweek(as.Date(iq_test$week_start_date))
iq_internaltrain <- head(iq_train, nrow(iq_train)*0.8)
iq_test<-as_tsibble(iq_test, index=yearweek)%>%fill_gaps()
iq_internaltest <- tail(iq_train, nrow(iq_train)*0.2)
iquitosdynamicARIMA <- iq_internaltrain %>%
model(ARIMA(total_cases ~ reanalysis_air_temp_k + station_min_temp_c + reanalysis_min_air_temp_k + precipitation_amt_mm + station_max_temp_c + reanalysis_specific_humidity_g_per_kg + reanalysis_dew_point_temp_k + fourier(K=12)))
View(iquitosdynamicARIMA)
iq_dynamic_arima_forecast <- iquitosdynamicARIMA %>% forecast(iq_internaltest)
dynamic_arima_forecast %>% autoplot(sj_internaltest) +
labs(title = "Iquitos Dynamic ARIMA model") +
xlab("Week") +
ylab("Total Cases")
## Warning: Removed 1 row containing missing values (`()`).
## Warning: Removed 1 row containing missing values (`geom_line()`).

iq_dynamic_forecast <- iquitosdynamicARIMA %>% forecast(iq_internaltest)
iq_dynamic_accuracy <- fabletools::accuracy(iq_dynamic_forecast, iq_internaltest)
iq_dynamic_accuracy
## # A tibble: 1 × 10
## .model .type ME RMSE MAE MPE MAPE MASE RMSSE ACF1
## <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 "ARIMA(total_cases ~ re… Test 3.15 11.0 6.46 -Inf Inf NaN NaN 0.818
write.csv(iq_dynamic_accuracy, file="iqaccuracy.csv", row.names = FALSE)
Accuracy Metrics
forecast_list2 <- list(
iq_ets = forecast_ets.iquitos,
iq_stlf = forecast_stlf.iquitos,
iq_arima = forecast_arima.iquitos,
iq_nnetar = forecast_nnetar.iquitos,
iq_boxcox_nnetar = forecast_boxcoxnnetar_iq
)
accuracy_table2 <- data.table(Model = character(0), RMSE = numeric(0), MAE = numeric(0))
iq_dynamic_arima_results <- data.table(Model = "Dynamic ARIMA", RMSE = 11.2, MAE = 6.51)
accuracy_table2 <- rbind(accuracy_table2, iq_dynamic_arima_results)
for (model_name in names(forecast_list2)) {
forecast_object2 <- forecast_list2[[model_name]]
accuracy2 <- accuracy(forecast_object2)
accuracy_table2 <- rbind(accuracy_table2, data.table(Model = model_name, RMSE = accuracy2[1, "RMSE"], MAE = accuracy2[1, "MAE"]))
}
accuracy_table2 <- accuracy_table2 %>% arrange(RMSE)
iq_accuracy_table <- kable(accuracy_table2, format = "markdown", caption = "Summary of Accuracy Metrics for Forecast Models")
iq_accuracy_table
Summary of Accuracy Metrics for Forecast Models
| iq_stlf |
3.505217 |
2.639316 |
| iq_nnetar |
3.849267 |
2.881478 |
| iq_ets |
3.895382 |
2.695285 |
| iq_arima |
3.895382 |
2.694900 |
| iq_boxcox_nnetar |
3.954203 |
2.752177 |
| Dynamic ARIMA |
11.200000 |
6.510000 |