Lewati ke konten utama

Analisis Deret Waktu menggunakan R: Tutorial

Pelajari Analisis Deret Waktu dengan R serta penggunaan paket di R untuk peramalan agar deret waktu nyata sesuai dengan model yang optimal.
Diperbarui 28 Sep 2026  · 13 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Deret waktu adalah ukuran atau metrik yang diukur secara berkala dari waktu ke waktu. Contoh Analisis Deret Waktu antara lain Keuangan, harga Saham, data Cuaca, Studi Utilitas, dan banyak lagi.

Model deret waktu dapat dilakukan dengan cara:

  • Memahami kekuatan dan struktur yang mendasari yang menghasilkan data teramati.
  • Mulai memasangkan model dan juga melakukan peramalan, pemantauan, atau bahkan kontrol umpan balik dan umpan maju.

Dalam tutorial ini, Anda akan diberikan gambaran umum tentang model deret waktu stasioner dan nonstasioner. Anda akan diperlihatkan cara mengidentifikasi sebuah deret waktu dengan menghitung ACF dan PACF-nya. Bentuk grafik dari fungsi-fungsi ini memungkinkan kita menilai kestasioneran sebuah deret waktu. Kita dapat membuat deret nonstasioner menjadi stasioner dengan melakukan pembedaan (differencing). Dengan mengetahui sifat sebuah deret, kini lebih mudah untuk memprediksi nilai masa depan dari model yang diikuti deret tersebut. Ilustrasi data nyata yang dapat ditemukan dalam paket TSA di R juga akan menjadi bagian dari tutorial ini.

Proses Stasioner

Misalkan $X$ adalah peubah acak yang diindeks terhadap waktu (biasanya dinotasikan dengan $t$), pengamatan $\left\{x_t,\,t\in \textbf{N}\right\}$ disebut deret waktu. $\textbf{N}$ adalah himpunan bilangan bulat yang di sini dianggap sebagai himpunan indeks waktu. $N$ juga dapat berupa penanda waktu. Kestasioneran adalah asumsi kritis dalam model deret waktu, dan menyiratkan homogenitas pada deret sehingga deret berperilaku serupa tanpa memandang waktu, yang berarti sifat statistiknya tidak berubah dari waktu ke waktu. Ada dua bentuk kestasioneran: bentuk kuat dan bentuk lemah.

Definisi 1

Suatu proses stasioner $\left\{x_t,\,t\in \textbf{N}\right\}$ dikatakan stasioner ketat atau kuat jika distribusi statistiknya tetap tidak berubah setelah pergeseran skala waktu. Karena distribusi suatu proses stokastik didefinisikan oleh fungsi distribusi berdimensi hingga, kita dapat merumuskan definisi alternatif dari kestasioneran ketat. Jika untuk setiap $n$, setiap pilihan waktu $t_1, t_2, \ldots, t_n\in \textbf{N}$ dan setiap jeda waktu $k$ sedemikian sehingga $t_{i+k}\in\textbf{N}$, vektor acak berdimensi $n$ $(X_{t_1+k}, X_{t_2+k}, \ldots, X_{t_n+k})$ memiliki distribusi yang sama dengan vektor $(X_{t_1}, X_{t_2}, \ldots, X_{t_n})$, maka proses tersebut stasioner ketat. Yaitu untuk $h$ dan $x_i$

\begin{align*} P(X_{t_1}\leq x_1, X_{t_2}\leq x_2, \ldots, X_{t_k}\leq x_k) &= F(x_{t_1}, x_{t_2}, \ldots, x_{t_k})\\ &= F(x_{h+t_1}, x_{h+t_2}, \ldots, x_{h+t_k})\\ &= P(X_{h+t-1}\leq x_1, X_{h+t_2}\leq x_2, \ldots, X_{h+t_k}\leq x_k) \end{align*}

untuk setiap pergeseran waktu $h$ dan pengamatan $x_j$. Jika $\left\{X-t,\,t\in\textbf{N}\right\}$ stasioner ketat, maka distribusi marjinal $X_t$ independen dari $t$. Selain itu, distribusi dua dimensi dari $(X_{t_1}, X_{t_2})$ independen dari lokasi absolut $t_1$ dan $t_2$, hanya jarak $t_1-t_2$ yang penting. Konsekuensinya, fungsi mean $E(X)$ konstan, dan kovarians $Cov(X_t,X_{t-k})$ merupakan fungsi dari $k$ saja, bukan dari lokasi absolut $k$ dan $t$. Pada momen orde lebih tinggi, seperti momen orde ketiga, $E[X_uX_tX_v]$ tetap tidak berubah jika seseorang menambahkan pergeseran waktu konstan pada $s, t, u$.

Definisi 2

Deret waktu univariat $X_t$ adalah stasioner jika mean, varians, dan kovariansnya independen dari waktu. Jadi, jika $X_t$ adalah deret waktu (atau proses stokastik, artinya peubah acak yang diurutkan dalam waktu) yang didefinisikan untuk $t=1,2,3,\ldots, n$ dan untuk $t=0, -1, -2, -3, \ldots$, maka, $X_t$ secara matematis stasioner lemah jika

\begin{align} (i) & E[X_t] = \mu\\ (ii) & E\left[(X-\mu)^2\right] = Var(X_t) = \gamma(0) = \sigma^2\\ (iii) & E\left[(X_t-\mu)(X_{t-k}-\mu)\right] = Cov(X_t, X_{t-k}) = \gamma(k) \end{align}

Dua kondisi pertama ($(i)$ dan $(ii)$) mengharuskan proses memiliki mean dan varians konstan masing-masing, sementara $(iii)$ mengharuskan kovarians antara dua nilai apa pun (secara formal disebut fungsi kovarians) hanya bergantung pada selang waktu $k$ antara kedua nilai tersebut dan bukan pada titik waktu $t$.

Jika suatu proses Gaussian dengan momen orde kedua hingga, maka kestasioneran lemah ekuivalen dengan kestasioneran kuat. Kestasioneran ketat menyiratkan kestasioneran lemah hanya jika momen yang diperlukan ada. Kestasioneran kuat juga memerlukan asumsi terkait distribusi. Bentuk kuat umumnya dianggap terlalu ketat, oleh karena itu, Anda terutama akan berfokus pada kestasioneran lemah, yang kadang dikenal sebagai kestasioneran kovarians, kestasioneran dalam arti luas, atau kestasioneran orde kedua.

Kestasioneran dan Deret Waktu Acak (Proses Stokastik)

Deret waktu, di mana pengamatannya berfluktuasi di sekitar mean konstan, memiliki varians yang stabil dan saling bebas secara stokastik, adalah deret waktu acak. Deret waktu seperti ini tidak menampilkan pola apa pun:

  • Pengamatan tidak cenderung naik atau turun
  • Varians tidak meningkat atau menurun seiring waktu
  • Pengamatan tidak cenderung besar pada beberapa periode dibandingkan periode lain

Contoh model acak stasioner dapat ditulis sebagai

$$X_t = \mu+\varepsilon_t$$ di mana $\mu$ adalah mean konstan sehingga $E[X_t] = \mu$ dan $\varepsilon_t$ adalah komponen noise yang diasumsikan bermean nol, varians konstan, dan saling bebas (juga dikenal sebagai white noise).

Simulasi Deret Waktu Acak

# purely random process with mean 0 and standard deviation 1.5
eps <- rnorm(100, mean = 0, sd = 1)
mu <- 2 # the constant mean
# The process
X_t <- mu + eps

# plotting the time series
ts.plot(X_t, main = "Example of (random) stationary time series", ylab = expression(X[t]))

Proses yang disimulasikan berfluktuasi di sekitar mean konstan $\mu = 2$.

Fungsi Otokovarians

Fungsi otokovarians teoretis (ACF) dari proses stokastik stasioner adalah alat penting untuk menilai sifat deret waktu. Misalkan $X_t$ adalah proses stokastik stasioner dengan mean $\mu$ dan varians $\sigma^2$. ACF pada lag $k$, $\gamma(k)$, adalah $$\gamma(k) = \frac{\gamma(k)}{\gamma(0)} = \frac{\gamma(k)}{\sigma^2}$$

Fungsi ACF adalah ukuran terstandarisasi dari otokovarians dan memiliki beberapa sifat.

Sifat ACF

  1. $\rho(0) = 1$
  2. ACF adalah fungsi genap dari lag. Artinya $\rho(k) = \rho(-k)$
  3. $|\rho(-k)| \leq 1$

ACF dari proses di atas direpresentasikan oleh gambar berikut.

# Auto-covariance function of the simulated stationary random time series
acf(X_t, main = "Auto-covariance function of X")

Catatan 1. Kurangnya keunikan adalah karakteristik ACF. Bahkan jika suatu acak tertentu memiliki struktur kovarians yang unik, kebalikannya umumnya tidak benar: dimungkinkan untuk menemukan lebih dari satu proses stokastik dengan ACF yang sama. Hal ini menyebabkan masalah spesifikasi seperti diilustrasikan dalam [@jenkinsd].

Catatan 2: Sebuah matriks yang sangat khusus diperoleh dari fungsi autokorelasi dari suatu proses stasioner. Matriks ini disebut matriks Toeplitz. Ini adalah sejenis matriks varians dan kovarians berordo $m = t-k$ (lag, termasuk autokorelasi hingga lag $m-1$), sehingga bersifat diagonal, simetris, positif-definit.

\begin{equation} \begin{pmatrix} 1 & \rho(1) & \rho(2) & \cdots & \rho(m-1)\\ \rho(1) & 1 & \rho(1) & \cdots & \rho(m-2)\\ \cdots &\cdots &\cdots &\cdots &\cdots\\ \rho(m-1) & \rho(m-2) & \cdots & \rho(1) & 1 \end{pmatrix} \end{equation}

Proses Murni Acak atau White Noise

Suatu proses diskret $\left\{Z_t\right\}$ disebut proses murni acak jika peubah acak $Z_t$ membentuk deret yang saling bebas dan berdistribusi identik (i.i.d.). Definisi ini menyiratkan proses memiliki mean dan varians konstan.

$$\gamma(k) = cov(Z_t, Z_{t+k}) = 0,\quad\forall k\in -3,-2,-1,0,1,2,3, \ldots$$ Mengingat bahwa mean dan fungsi otokovarians (acvf) tidak bergantung pada waktu, proses tersebut stasioner orde kedua.

Proses Random Walk

Suatu proses $\left\{X_t\right\}$ disebut proses random walk jika $X_t = X_{t-1}+Z_t$, dengan $Z_t$ adalah proses murni acak dengan mean $\mu$ dan varians $\sigma^2_Z$. Proses biasanya dimulai pada $t = 0$ dan kita punya $X_1 = Z_0$ yang berarti $X_0 = 0$. Kita peroleh

\begin{align*} X_1 &= X_0 + Z_1, \quad\text{pada } t = 1\\ X_2 &= X_1 + Z_2 = X_0 + Z_1+ Z_2, \quad\text{pada } t = 2\\ X_3 &= X_2 + Z_3 = X_0 + Z_1+ Z_2 + Z_3, \quad\text{pada } t = 3\\ &\cdots\\ X_t &= X_0 + \sum_{i = 1}^tZ_i \end{align*}

Momenn orde pertama (atau nilai harapan) untuk proses ini sama dengan $$E[X_t] = X_0 +\sum_{i = 1}^tE[Z_i] = X_0 + t\mu_z = t\mu_z$$ dan variansnya $$Var(X_t) = t\sigma^2_Z$$ Perhatikan bahwa mean dan varians berubah seiring waktu, sehingga proses ini nonstasioner. Contoh deret waktu yang berperilaku seperti random walk adalah harga saham.

Simulasi Proses Random Walk

# seed X_0 = 0
X <- 0

# purely random process with mean 0 and standard deviation 1.5
Z <- rnorm(100, mean = 0.5, sd = 1.5)

# the process
for (i in 2:length(Z)){
  X[i] <- X[i-1] + Z[i]
}

# process plotting
ts.plot(X, main = "Random walk process")

Pembedaan (Differencing)

Differencing adalah metode paling umum untuk membuat data deret waktu menjadi stasioner. Ini adalah jenis penyaringan khusus, sangat penting untuk menghilangkan tren. Untuk data musiman, diferensiasi orde pertama biasanya cukup untuk mencapai kestasioneran pada mean. Misalkan $X_t = \left\{X_1, X_2,\ldots, X_n\right\}$ adalah deret waktu nonstasioner. Deret stasioner diperoleh sebagai

$$\Delta X_{t+1} = X_{t+1}-X_t\quad\text{atau }\,\Delta X_{t} =X_t-X_{t-1}$$ yang biasa disebut perbedaan orde pertama. Jika perbedaan orde kedua diperlukan, Anda dapat menggunakan operator $\Delta^2$ yaitu perbedaan dari perbedaan orde pertama

$$\Delta^2X_{t+2} = \Delta X_{t+2} - \Delta X_{t+1}$$

# differencing and plotting of the random walk process
ts.plot(diff(X))

Anda tahu bahwa perbedaan orde pertama yang dihasilkan berfluktuasi di sekitar mean konstan 0. Ini karena secara matematis

$$\Delta X_{t+1} = X_{t+1}-X_t = Z_t$$ yang stasioner karena merupakan proses murni acak dengan mean dan varians konstan.

Rata-rata Bergerak Orde $q$: MA($q$)

Misalkan $\left\{Z_t\right\}$ adalah proses murni acak dengan mean nol dan varians $\sigma^2_Z$. Proses dikatakan Rata-rata Bergerak orde #q# jika

$$X_t = \beta_0Z_t-\beta_1Z_{t-1}-\cdots-\beta_q Z_{t-q}$$ di mana $\beta_i,\, i = 1,2,\ldots,q$ adalah konstanta. Peubah acak $Z_t, \,t\in\textbf{N}$ biasanya diskalakan sehingga $\beta_0=1$

Simulasi MA orde pertama

# purely random process with mean 0 and standard deviation 1.5 (arbitrary choice)
Z <- rnorm(100, mean = 0, sd = 1.5)

# process simulation
X <- c()
for (i in 2:length(Z)) {
  X[i] <- Z[i] - 0.45*Z[i-1]
}

# process plotting
ts.plot(X, main = "Moving Average or order 1 process")

Untuk proses MA(1), 3 kondisi dapat diverifikasi sebagai berikut:

\begin{align} E[X_t] &= 0\\ Var(X_t) &= E[X_t^2] - 0 = E\left[Z_t^2-2\beta Z_tZ_{t-1}+\beta^2Z_{t-1}^2\right]= \sigma^2_Z+\beta^2\sigma^2_Z\\ \gamma(k) &= cov(X_t, X_{t+k}) = E[X_tX_{t+k}] - E[X_t]E[X_{t+k}] = E[X_tX_{t+k}]\\ &= E\left[(Z_t-\beta Z_{t-1})(Z_{t+k}-\beta Z_{t-1+k})\right]\\ &= E\left[Z_tZ_{t+k} - \beta Z_tZ_{t-1+k} -\beta Z_{t-1}Z_{t+k} + \beta^2 Z_{t-1}Z_{t-1+k}\right]\\ \end{align}

untuk $k = 0,\, \gamma(0) = Var(X_t) = \sigma^2_Z(1+\beta^2)$

untuk $k = 1,\, \gamma(1) = E\left[Z_tZ_{t+1} - \beta Z_t^2 -\beta Z_{t-1}Z_{t+1} + \beta^2 Z_{t-1}Z_{t}\right] = -\beta\sigma^2_Z$

dan untuk $k>1,\, \gamma(k) = 0.$

Dengan demikian, proses MA(1) memiliki kovarians nol ketika pergeseran lebih dari satu periode. Artinya proses ini hanya memiliki ingatan satu periode.

ACF untuk MA(1) adalah

$$\rho(k) = \frac{\gamma(k)}{\gamma(0)} = \begin{cases}1, &\text{k }=0\\\frac{-\beta}{1+\beta^2}, & \text{k }\pm 1\end{cases}$$

Pertanyaan: ulangi untuk MA(2)

Dapat dilihat mengapa fungsi autokorelasi sampel berguna untuk menentukan orde dari proses rata-rata bergerak: fungsi autokorelasi (k) untuk proses MA(q) memiliki q nilai non-nol (secara signifikan berbeda dari nol) dan nol untuk $k > q$. Tidak ada pembatasan pada $\left\{\beta_i\right\}$ yang diperlukan agar MA menjadi stasioner. Namun, $\left\{\beta_i\right\}$ harus dibatasi untuk memastikan keterbalikan (invertibility).

Oto-regresi Orde $p$: AR($p$)

Misalkan $\left\{Z_t\right\}$ adalah proses murni acak dengan mean nol dan varians $\sigma_Z^2$. Suatu proses $\left\{X_t\right\}$ akan disebut proses autoregresif orde $p$ jika $$X_t = \alpha_1X_{t-1}+\alpha_2X_{t-2}+\cdots+\alpha_pX_{t-p}+Z_t$$ Dalam proses autoregresif orde $p$, pengamatan saat ini $X_t$ (misalnya return hari ini) dihasilkan oleh rata-rata tertimbang dari pengamatan masa lalu hingga $p$ periode ke belakang, bersama dengan peubah acak independen namun bergantung pada nilai masa lalu $X_t$ dan karenanya bersifat autoregresif. Jenis proses ini diperkenalkan oleh [@greenwood1920inquiry]. AR($p$) di atas dapat ditulis dengan mean konstan

$$X_t = \delta+\alpha_1X_{t-1}+\alpha_2X_{t-2}+\cdots+\alpha_pX_{t-p}+Z_t$$ di mana $\mu$ adalah suku konstan yang terkait sebagai mean dari deret waktu dan $\alpha_1, \alpha_2,\ldots, \alpha_p$ dapat bernilai positif atau negatif. AR($p$) stasioner jika $E[X_t] = E[X_{t-1}] = \cdots = E[X_p] = \mu$. Dengan demikian,

\begin{align*} E[X_t] = \mu &= \delta + \alpha_1\mu+\alpha_2\mu+\cdots+\alpha_p\mu+ 0\\ \Rightarrow \mu &= \frac{\delta}{1-\alpha_1-\alpha_2-\cdots-\alpha_p} \end{align*} Agar rumus terakhir menjadi konstan, kita pertimbangkan kondisi $\alpha_1+\alpha_2+\cdots+\alpha_p<1$.

  </1>

Proses AR Orde Pertama: AR(1)

Pertimbangkan kasus ketika $p=1$, maka $$X_t = \alpha X_{t-1}+Z_t$$ adalah autoregresif orde pertama AR(1) yang juga dikenal sebagai proses Markov. Dengan menggunakan operator geser mundur $BX_t = X_{t-1}$, Anda dapat menyatakan AR(1) sebagai proses MA tak hingga. Kita punya $$(1 - \alpha B)X_t = Z_t$$ sehingga, \begin{align*} X_t &= \frac{Z_t}{1-\alpha B}\\ &= (1+\alpha B +\alpha^2B^2+ \cdots)Z_t\\ &=Z_t+\alpha Z_{t-1}+\alpha^2Z_{t-2}+\cdots\\ &=Z_t+\beta_1 Z_{t-1}+\beta_2 Z_{t-2}+\cdots\\ \end{align*}

Maka $E[X_t] = 0$ dan $Var(X_t) = \sigma^2_Z(1+\alpha^2+\alpha^4+\cdots)$. Deret ini konvergen dengan syarat $|\alpha|<1$.

Pertanyaan: Diberikan bahwa proses AR(1) $X_t = \alpha_1X_1+Z_t$ adalah proses murni acak dengan mean nol dan varians $\sigma^2_Z$ dan $\alpha$ adalah konstanta dengan syarat yang diperlukan pada $\alpha$, turunkan varians dan fungsi otokovarians dari $X_t$.

Mensimulasikan AR(1)

# constant alpha
alpha = 0.5

# purely random process with mean 0 and standard deviation 1.5
Z <- rnorm(100, mean = 0, sd = 1.5)

# seed
X <- rnorm(1)

# the process
for (i in 2:length(Z)) {
  X[i] <- 0.7*X[i-1]+Z[i]
}

# process plotting
ts.plot(X)

Pertanyaan: Nyatakan kondisi kestasioneran model AR (2) terkait nilai parameter. Yaitu, tunjukkan kondisi berikut:

expression

Anda juga dapat menyatakan proses AR dengan orde berhingga, katakan p, sebagai proses MA berorde tak hingga. Ini dapat dilakukan dengan substitusi berurutan atau menggunakan operator geser mundur.

Proses Autoregressive Moving Average: ARMA($p,q$)

Dalam pembangunan model, mungkin perlu mencampurkan istilah AR dan MA dalam satu model. Ini menghasilkan proses campuran autoregressive – moving averages (ARMA). Proses ARMA yang memuat $p$ suku autoregresif dan $q$ suku rata-rata bergerak dikatakan berorde $(p, q)$ dan diberikan oleh

$$X_t = \alpha_1X_{t-1}+\alpha_2X_{t-2}+\cdots+\alpha_pX_{t-p}+Z_t-\beta_1Z_{t-1}-\beta_2Z_{t-2}-\cdots-\beta_qZ_{t-q}$$ Dengan menggunakan operator geser mundur B, persamaan dapat ditulis sebagai

$$\alpha_p(B)X_t = \beta_q(B)Z_t$$ di mana $\alpha_p(B)$ dan $\beta_q(B)$ adalah polinomial berorde $p$ dan $q$ masing-masing, sehingga

\begin{align*} \alpha_p(B) &= \left(1-\alpha_1 B-\cdots-\alpha_p B^p\right)\\ \beta_q(B) &= \left(1-\beta_1 B-\cdots-\beta_p B^p\right) \end{align*}

Agar proses dapat dibalik (invertible), akar dari $\beta_q(B)$ harus berada di luar lingkaran satuan. Agar stasioner, kita memerlukan akar dari $\alpha_p(B)=0$ berada di luar lingkaran satuan. Diasumsikan juga $\alpha_p(B)=0$ dan $\beta_q(B) = 0$ tidak memiliki akar yang sama.

Proses ARMA(1,1)

Proses ini berorde $(1,1)$ dan diberikan oleh persamaan $$X_t = \alpha_1X_{t-1}+Z_t-\beta_1Z_{t-1}$$

dengan syarat $|\alpha_1|<1$ dan $|\beta_1|<1$ diperlukan untuk pembuktian kestasioneran dan keterbalikan. Ketika $\alpha < 0$, ARMA(1,1) tereduksi menjadi MA(1) dan ketika $\beta_1<0$, kita akan memperoleh AR(1). Proses ARMA(1,1) dapat diubah menjadi representasi autoregresif murni menggunakan operator geser mundur:

$$(1-\alpha_1B)X_t = (1-\beta_1B)Z_t$$

Kita punya

\begin{align*} \frac{1-\alpha_1B}{1-\beta_1B}X_t &= Z_t\\ \pi(B)X_t &= Z_t \end{align*}

dengan

\begin{align*} \pi(B) = 1-\pi_1B-\pi_2B^2-\ldots &= \frac{1-\alpha_1B}{1-\beta_1B}\\ (1-\beta_1B)(1-\pi_1B-\pi_2B^2-\ldots) &= 1-\alpha_1B\\ 1-\left[(\pi_1+\beta_1)B - (\pi_2+\beta_2)B^2 - (\pi_3+\beta_3)B^3\right] & = 1-\alpha_1B \end{align*}

Dengan mengidentifikasi koefisien B di kedua sisi persamaan, kita peroleh suku tak diketahui sebagai $$\pi_j = \beta_1^{j-1}(\alpha_1-\beta_1),\,\text{untuk }\, j\geq1$$

Fungsi Autokorelasi dari ARMA (1, 1)

Nilai harapan $X_t$ diberikan oleh $E[X_t] = \alpha_1E[X_{t-1}]$ dan di bawah asumsi kestasioneran, kita punya $E[X_t] = E[X_{t-1}] = \mu = 0$. Ini berguna untuk perhitungan fungsi otokovarians yang diperoleh sebagai berikut:

  1. $X_tX_{t-k} = \alpha_1X_{t-k}X_{t-1}+X_{t-k}Z_t-\beta_1X_{t-k}Z_{t-1}$
  2. Dengan mengambil nilai harapan di kedua sisi, kita peroleh: \begin{align*} E\left[X_tX_{t-k}\right] &= E\left[\alpha_1X_{t-k}X_{t-1}\right]+E\left[X_{t-k}Z_t\right]-\beta_1E\left[X_{t-k}Z_{t-1}\right]\\ \gamma(k)&=\alpha_1\gamma(k-1)+E\left[X_{t-k}Z_t\right]-\beta_1E\left[X_{t-k}Z_{t-1}\right] \end{align*}

Untuk $k = 0$,

\begin{align*} \gamma(1)&=\alpha_1\gamma(0)+E\left[X_{t-1}Z_t\right]-\beta_1E\left[X_{t-1}Z_{t-1}\right]\\ &=\alpha_1\left(\alpha_1\gamma(1)+ \sigma^2_Z - \beta_1(\alpha_1-\beta_1)\sigma^2_Z\right)-\beta_1\sigma^2_Z\\ &= \alpha^2\gamma(1)+(\alpha_1-\beta_1)(1-\alpha_1\beta_1)\sigma^2_Z\\ \Rightarrow \gamma(1)&=\frac{(\alpha_1-\beta_1)(1-\alpha_1\beta_1)\sigma^2_Z}{1-\alpha^2}\\ \Rightarrow \gamma(0)&=\alpha_1\frac{(\alpha_1-\beta_1)(1-\alpha_1\beta_1)\sigma^2_Z}{1-\alpha^2}+ \sigma^2_Z - \beta_1(\alpha_1-\beta_1)\sigma^2_Z\\ &=\frac{\left(1+\beta_1^2-2\alpha_1\beta_1\right)\sigma_Z^2}{1-\alpha^2} \end{align*}

Untuk $k \geq 2$,

\begin{align*} \gamma(2)&=\alpha_1\gamma(k-1) \end{align*}

Dengan demikian, ACF dari ARMA(1,1) adalah:

$$\rho(k) = \begin{cases} 1, &\text{untuk }\,k=0\\ \frac{(\alpha_1-\beta_1)(1-\alpha_1\beta_1)}{1+\beta_1^2-2\alpha_1\beta_1},&\text{untuk }\,k=1\\ \alpha_1\rho(k-1), &\text{untuk }\,k\geq2\\ \end{cases} $$ ACF dari ARMA(1,1) menggabungkan karakteristik dari proses AR(1) dan MA(1). Parameter MA(1) dan AR(1) sama-sama hadir dalam $\rho(1)$. Di luar $\rho(1)$, ACF dari model ARIMA(1,1) mengikuti pola yang sama seperti ACF dari AR(1).

Pertanyaan: Temukan fungsi autokorelasi parsial (PACF) dari proses ARMA(1,1).

Catatan: Karakteristik proses deret waktu diberikan dalam istilah ACF dan PACF. Langkah paling krusial dalam analisis deret waktu adalah mengidentifikasi dan membangun model berdasarkan data yang tersedia, di mana ACF dan PACF tidak diketahui.

Simulasi proses ARMA(1,1)

# purely random process with mean 0 and standard deviation 1.5
Z <- rnorm(100, mean = 0, sd = 1.5)

# Process
X <- rnorm(1)

for (i in 2:length(Z)) {
  X[i] <- 0.35*X[i-1] + Z[i] + 0.4*Z[i-1]
}

# process plotting
ts.plot(X, main = "ARMA(1,1) process")

# ACF et PACF
par(mfrow = c(1,2))
acf(X); pacf(X)

Proses ARIMA($p,d,q$)

Model Autoregressive Integrated Moving Average adalah deret waktu yang didefinisikan oleh persamaan:

Proses SARIMA(p,d,q)(P,D,Q)

Peramalan

Pada bagian ini, Anda akan menggunakan deret waktu nyata untuk memasangkan model optimal darinya. Untuk tujuan itu, Anda akan menggunakan paket forecast. Fungsi auto.arima memasang dan memilih model optimal dari data dan fungsi forecast memungkinkan prediksi h periode ke depan.

# R packages to be used
library(forecast)
library(TSA)

Contoh 1:

# Data from TSA package
data("co2")
data("boardings")

# fitting
fit <- auto.arima(co2)

# Time series plot
plot(fc <- forecast(fit, h = 15))

Contoh 2:

data("boardings")

# fitting
fit2 <- auto.arima(boardings[,"log.price"])

# forecasting
plot(fc2 <- forecast(fit2, h = 15))

Referensi

Greenwood, Major, dan G Udny Yule. 1920. “An Inquiry into the Nature of Frequency Distributions Representative of Multiple Happenings with Particular Reference to the Occurrence of Multiple Attacks of Disease or of Repeated Accidents.” Journal of the Royal Statistical Society 83 (2). JSTOR: 255–79.

Jenkins, GM. t.t. “D. G. Watts (1968) Spectral Analysis and Its Applications.” San Francisco.

Kesimpulan

Dalam tutorial ini, Anda membahas banyak detail tentang Deret Waktu di R. Anda telah mempelajari apa itu proses stasioner, simulasi peubah acak, simulasi deret waktu acak, proses random walk, dan banyak lagi. Anda juga membahas Oto-regresi orde p: Ar(pp), proses SARIMA(p,d,q(P, D, Q)), peramalan.

Jika Anda ingin mempelajari lebih lanjut tentang Deret Waktu di R, ikuti kursus DataCamp berikut:

Topik
R
Data Science
Analisis Data

Pelajari lebih lanjut tentang R

Kursus

Analisis Deret Waktu dengan R

4 jam
61.5K
Pelajari teknik-teknik inti yang diperlukan untuk mengekstrak wawasan yang bermakna dari data deret waktu.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

Lihat SelengkapnyaLihat Selengkapnya