library(tseries)

library(forecast)

library(TTR)

king<-scan("http://robjhyndman.com/tsdldata/misc/kings.dat", skip=3)

king


# ts = time series = 시계열

# ts(데이터) = 시계열 객체 생성하기

# start=첫 번째 관찰 타임; end=마지막 관찰 타임; frequency=세부적인 관찰 주기

king.ts<-ts(king)


# plot.ts(시계열 데이터) : 시계열 데이터를 그래프로 표현 

plot.ts(king.ts)




# 3년마다 평균을 내서 그래프를 부드럽게 표현

# SMA() : 지난 n 회의 관측치에 대한 시계열의 산술 평균을 계산

king.sma3<-SMA(king.ts, n=3)

plot.ts(king.sma3)


# 8년마다 평균을 내서 그래프를 부드럽게 표현

king.sma8<-SMA(king.ts, n=8)

plot.ts(king.sma8)



# ARIMA모델

# 1차 차분(현시점자료-전시전자료)

king.ff1<-diff(king.ts, differences=1)

plot.ts(king.ff1)



# ACF와 PACF를 통해 적합하 ARIMA모델을 결정

acf(king.ff1, lag.max=20)

acf(king.ff1, lag.max=20, plot=F)


pacf(king.ff1, lag.max=20)

pacf(king.ff1, lag.max=20, plot=F)



# auto.arima() : 자동으로 적합한 arima모델을 찾아줌

auto.arima(king)

king.arima<-arima(king.ts, order=c(0,1,1))

king.arima


# forecast() : 미래 예측 

# 책에는 forecast.Arima()로 나오는데, 그건 작동이 안 됨

king.forecasts<-forecast(king.arima, h=5)

king.forecasts

plot(king.forecasts)

'programing > R studio' 카테고리의 다른 글

주성분분석 사례  (0) 2018.07.29
계량적MDS와 비계량적MDS 예시  (0) 2018.07.29
회귀분석 - lm  (0) 2018.07.02
기하분포 - dgeom  (0) 2018.07.02
ggplot2 - scale_x_discrete, scale_y_discrete - x, y값 순서 정렬  (0) 2018.06.29

+ Recent posts