From 53f20d58628171934c097dff5602fe17765eae99 Mon Sep 17 00:00:00 2001 From: leshe4ka46 Date: Thu, 25 Dec 2025 21:28:30 +0300 Subject: finish --- R_ARIMA/.md | 6 ++++ R_ARIMA/Rplots.pdf | Bin 0 -> 30547 bytes R_ARIMA/jj.dat | 84 +++++++++++++++++++++++++++++++++++++++++++++++++++++ R_ARIMA/main.r | 79 +++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 169 insertions(+) create mode 100644 R_ARIMA/.md create mode 100644 R_ARIMA/Rplots.pdf create mode 100644 R_ARIMA/jj.dat create mode 100755 R_ARIMA/main.r (limited to 'R_ARIMA') diff --git a/R_ARIMA/.md b/R_ARIMA/.md new file mode 100644 index 0000000..d400345 --- /dev/null +++ b/R_ARIMA/.md @@ -0,0 +1,6 @@ +AutoRegressive Integrated Moving Average + +https://en.wikipedia.org/wiki/Partial_autocorrelation_function + + +AIC (Akaike Information Criterion) \ No newline at end of file diff --git a/R_ARIMA/Rplots.pdf b/R_ARIMA/Rplots.pdf new file mode 100644 index 0000000..a878ac4 Binary files /dev/null and b/R_ARIMA/Rplots.pdf differ diff --git a/R_ARIMA/jj.dat b/R_ARIMA/jj.dat new file mode 100644 index 0000000..bcb2847 --- /dev/null +++ b/R_ARIMA/jj.dat @@ -0,0 +1,84 @@ + .71 + .63 + .85 + .44 + .61 + .69 + .92 + .55 + .72 + .77 + .92 + .6 + .83 + .8 + 1 + .77 + .92 + 1 + 1.24 + 1 + 1.16 + 1.3 + 1.45 + 1.25 + 1.26 + 1.38 + 1.86 + 1.56 + 1.53 + 1.59 + 1.83 + 1.86 + 1.53 + 2.07 + 2.34 + 2.25 + 2.16 + 2.43 + 2.7 + 2.25 + 2.79 + 3.42 + 3.69 + 3.6 + 3.6 + 4.32 + 4.32 + 4.05 + 4.86 + 5.04 + 5.04 + 4.41 + 5.58 + 5.85 + 6.57 + 5.31 + 6.03 + 6.39 + 6.93 + 5.85 + 6.93 + 7.74 + 7.83 + 6.12 + 7.74 + 8.91 + 8.28 + 6.84 + 9.54 + 10.26 + 9.54 + 8.729999 + 11.88 + 12.06 + 12.15 + 8.91 + 14.04 + 12.96 + 14.85 + 9.99 + 16.2 + 14.67 + 16.02 + 11.61 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) -- cgit v1.2.3