Warm up

install.packages(“fpp”) library(“fpp”) library(“rmarkdown”)

Explore stock market data

help(EuStockMarkets)

Save stock data as a variable and look at descriptive statistics

stocks <- EuStockMarkets data(stocks) summary(stocks) class(stocks)

Look at the first 10 rows of data

head(stocks, n=10)

Warm-up question b graph a basic plot

plot(stocks, main = ‘Time series analysis for EU stock data’, col=‘blue’) abline(v=1997, col=“red”)

?plot

Does creating a ts object change the graph?

stocksts <- ts(stocks, frequency = 12) plot(stocksts)

Decmpose CAC

CAC <- stocksts[,‘CAC’] CAC CAC_ts <- ts(CAC, frequency = 120) decompose_CAC <- decompose(CAC_ts, ‘multiplicative’)

plot(as.ts(decompose_CAC\(seasonal)) plot(as.ts(decompose_CAC\)trend)) plot(as.ts(decompose_CAC$random)) plot(decompose_CAC, col=‘blue’) abline(v=13, col=“red”)

Decmpose DAX

DAX <- stocksts[,‘DAX’] DAX DAX_ts <- ts(DAX, frequency = 120) decompose_DAX <- decompose(DAX_ts, ‘multiplicative’)

plot(as.ts(decompose_DAX\(seasonal)) plot(as.ts(decompose_DAX\)trend)) plot(as.ts(decompose_DAX$random)) plot(decompose_DAX, col=‘blue’) abline(v=13, col=“red”)

Decmpose SMI

SMI <- stocksts[,‘SMI’] SMI SMI_ts <- ts(SMI, frequency = 120) decompose_SMI <- decompose(SMI_ts, ‘multiplicative’)

plot(as.ts(decompose_SMI\(seasonal)) plot(as.ts(decompose_SMI\)trend)) plot(as.ts(decompose_SMI$random)) plot(decompose_SMI, col=‘blue’) abline(v=13, col=“red”)

Decmpose FTSE

FTSE <- stocksts[,‘FTSE’] FTSE FTSE_ts <- ts(FTSE, frequency = 120) decompose_FTSE <- decompose(FTSE_ts, ‘multiplicative’)

plot(as.ts(decompose_FTSE\(seasonal)) plot(as.ts(decompose_FTSE\)trend)) plot(as.ts(decompose_FTSE$random)) plot(decompose_FTSE, col=‘blue’) abline(v=13, col=“red”)

QUESTION 2

Download the package and run it locally

install.packages(“fpp2”) library(fpp2) help(maxtemp)

colnames(maxtemp) colnames(maxtemp)[1] <- ‘year’ colnames(maxtemp)[2] <- ‘temp’

Explore first 10 rows

head(maxtemp, n=10)

Save the data into a new variable and run desc stats

data(maxtemp) maxtemp <- maxtemp maxtemp summary(maxtemp)

Quick visual of the data

autoplot(maxtemp)

plot(subset)

Create a time series object

maxtemp_ts <- ts(maxtemp, frequency = 2) plot(maxtemp_ts)

Forecast using SES and use indexes to limit dataset from 1990

ses <- ses(maxtemp_ts[10:25], h=5, alpha=0.1, initial=“optimal”) plot(ses)

double exponential - forecast using Holt Winters

fit <- HoltWinters(maxtemp_ts, gamma=FALSE)

predictive accuracy

library(forecast) accuracy(fit) AIC(fit, k=1)

predict next three future values

library(forecast) forecast(fit, 3) plot(forecast(fit, 3))

?ses

installed.packages(‘dygraphs’) library(dygraphs)

QUESTION 3

Import the two daa sets and then rename the original convention

oliv <- Unit11TimeSeries_Ollivander oliv

greg <- Unit11TimeSeries_Gregorovitch greg

Rename the columns

colnames(greg) colnames(greg)[1] <- ‘date’ colnames(greg)[2] <- ‘value’

colnames(oliv) colnames(oliv)[1] <- ‘date’ colnames(oliv)[2] <- ‘value’

install.packages(“xts”) library(xts)

transform to date variables

olivxts <- xts(oliv[, -1], order.by=as.Date(oliv\(date)) gregxts <- xts(greg[, -1], order.by=as.Date(greg\)date))