aboutsummaryrefslogtreecommitdiff
path: root/R_ARIMA/main.r
diff options
context:
space:
mode:
Diffstat (limited to 'R_ARIMA/main.r')
-rwxr-xr-xR_ARIMA/main.r79
1 files changed, 79 insertions, 0 deletions
diff --git a/R_ARIMA/main.r b/R_ARIMA/main.r
new file mode 100755
index 0000000..3466ae9
--- /dev/null
+++ b/R_ARIMA/main.r
@@ -0,0 +1,79 @@
+#!/usr/bin/env Rscript
+
+df <- read.table("jj.dat", sep = "\n")
+
+
+df_ts <- ts(df, start = 1960, frequency = 4)
+plot(df_ts, main = "df_ts", ylab = "value")
+
+ts_diff <- diff(df_ts)
+plot(ts_diff)
+
+decomp_add <- decompose(df_ts, type="additive")
+plot(decomp_add)
+
+df_ts_log <- log10(df_ts)
+plot(df_ts_log)
+
+ts_diff_log10 <- diff(df_ts_log)
+plot(ts_diff_log10)
+
+acf(ts_diff_log10)
+pacf(ts_diff_log10)
+
+
+model1 <- arima(ts_diff_log10, order = c(1, 1, 0))
+model2 <- arima(ts_diff_log10, order = c(0, 1, 1))
+model3 <- arima(ts_diff_log10, order = c(1, 1, 1))
+
+# 2k - 2 ln(lambda)
+AIC(model1, model2, model3)
+
+
+sim_ar4 <- arima.sim(n = 10000, list(ar = c(0.9, -0.5, 0.2, -0.3)))
+acf(sim_ar4, main = "ACF AR(4)")
+pacf(sim_ar4, main = "PACF AR(4)")
+ar4 <- arima(sim_ar4, order = c(4, 0, 0))
+AIC(ar4)
+
+sim_ar3 <- arima.sim(n = 10000, list(ar = c(0.9, -0.5, 0.2)))
+acf(sim_ar3, main = "ACF AR(3)")
+pacf(sim_ar3, main = "PACF AR(3)")
+ar3 <- arima(sim_ar3, order = c(3, 0, 0))
+AIC(ar3)
+
+sim_ar2 <- arima.sim(n = 10000, list(ar = c(0.9, -0.5)))
+acf(sim_ar2, main = "ACF AR(2)")
+pacf(sim_ar2, main = "PACF AR(2)")
+ar2 <- arima(sim_ar2, order = c(2, 0, 0))
+AIC(ar2)
+
+sim_ar1 <- arima.sim(n = 10000, list(ar = c(0.9)))
+acf(sim_ar1, main = "ACF AR(1)")
+pacf(sim_ar1, main = "PACF AR(1)")
+ar1 <- arima(sim_ar1, order = c(1, 0, 0))
+AIC(ar1)
+
+sim_ma4 <- arima.sim(n = 10000, list(ma = c(-1.9, 1.7, -1.5, 1.5)))
+acf(sim_ma4, main = "ACF MA(4)")
+pacf(sim_ma4, main = "PACF MA(4)")
+ma4 <- arima(sim_ma4, order = c(4, 0, 0))
+AIC(ma4)
+
+sim_ma3 <- arima.sim(n = 10000, list(ma = c(-1.9, 1.7, -1.5)))
+acf(sim_ma3, main = "ACF MA(3)")
+pacf(sim_ma3, main = "PACF MA(3)")
+ma3 <- arima(sim_ma3, order = c(3, 0, 0))
+AIC(ma3)
+
+sim_ma2 <- arima.sim(n = 10000, list(ma = c(-1.9, 1.7)))
+acf(sim_ma2, main = "ACF MA(2)")
+pacf(sim_ma2, main = "PACF MA(2)")
+ma2 <- arima(sim_ma2, order = c(2, 0, 0))
+AIC(ma2)
+
+sim_ma1 <- arima.sim(n = 10000, list(ma = c(-1.9)))
+acf(sim_ma1, main = "ACF MA(1)")
+pacf(sim_ma1, main = "PACF MA(1)")
+ma1 <- arima(sim_ma1, order = c(1, 0, 0))
+AIC(ma1)