Skip to main content

Konversi Data ke Format Deret Waktu dengan R

Masukkan data

Data yang didimasukkan adalah data contoh, yaitu data inflasi bulanan Kota Padang, Kota Bukittinggi dan Indonesia. Namun dalam pengolahan nanti, kita hanya menggunakan data inflasi Kota Padang saja

Format file data adalah .csv, sehingga untuk memasukkan data kita menggunakan perintah read.csv.

data <- read.csv("http://r-stats.id/media/downloads/data/inflasi.csv", header = TRUE)
data
    year     month     bulan padang bukittinggi indonesia
1   2010   Januari  1/1/2010   1.59           -      0.84
2   2010  Februari  2/1/2010   0.17           -     -0.08
...
119 2019  November 11/1/2019  -0.34        -0.1      0.14
120 2019  Desember 12/1/2019   0.07       -0.01      0.34

Konversi data ke format data deret waktu

Perintah yang digunakan untuk konversi data ke deret waktu (time series) adalah ts.

data.ts <- ts(data$padang, start=c(2010, 1), end=c(2019, 12), frequency=12)
data.ts
       Jan   Feb   Mar   Apr   May   Jun   Jul   Aug   Sep   Oct   Nov   Dec
2010  1.59  0.17 -0.73  0.27  0.54  1.58  1.49 -0.37 -0.37  0.06  1.38  2.00
2011  3.70  0.44 -2.59 -1.07  0.08  0.11  0.77  1.13  1.24  0.63  0.46  0.48
...
2018  0.43 -0.09  0.31  0.01  0.46  0.39  0.62 -0.40 -0.35  0.80  0.19  0.16
2019  0.24 -0.44  0.33  0.44  0.86  1.07  0.89 -0.10 -0.95 -0.34 -0.34  0.07

Panggil data yang akan diolah

Jika dalam pengolahan kita hanya menggunakan sebagian data saja, misalnya data dari Januari 2015 sampai dengan Desember 2018, maka kita bisa memisahkannya dengan menggunakan perintah berikut.

data.ts.2015.2018 <- window(data.ts, start=c(2015,1), end=c(2018,12))
data.ts.2015.2018
       Jan   Feb   Mar   Apr   May   Jun   Jul   Aug   Sep   Oct   Nov   Dec
2015 -1.98 -2.07  0.01  0.56  0.65  0.83  1.21  0.38 -0.49 -0.44  0.47  1.79
2016  0.02  0.86  0.55 -0.92 -0.37  0.10  1.52  0.84  0.58  0.56  1.13  0.07
2017  0.57 -0.13 -0.01 -0.31 -0.04  0.34  0.54 -0.36  0.13  0.19  0.48  0.72
2018  0.43 -0.09  0.31  0.01  0.46  0.39  0.62 -0.40 -0.35  0.80  0.19  0.16

Konversi data ke format vektor

Kita bisa mengkonversi data deret waktu ke format data awal.

data.inf <- unclass(data.ts)
data.inf
  [1]  1.59  0.17 -0.73  0.27  0.54  1.58  1.49 -0.37 -0.37  0.06  1.38  2.00
 [13]  3.70  0.44 -2.59 -1.07  0.08  0.11  0.77  1.13  1.24  0.63  0.46  0.48
 [25]  0.56 -0.90  0.43  0.46 -0.43  1.22  0.13  1.08  0.54  0.71 -0.63  0.94
 [37]  1.34  0.63  0.34  0.56  0.64  1.40  2.75  0.91  0.05  0.68  0.39  0.70
 [49]  1.89 -0.64 -0.39 -0.09  0.05  0.31  0.81  1.83  0.33  1.18  3.44  2.66
 [61] -1.98 -2.07  0.01  0.56  0.65  0.83  1.21  0.38 -0.49 -0.44  0.47  1.79
 [73]  0.02  0.86  0.55 -0.92 -0.37  0.10  1.52  0.84  0.58  0.56  1.13  0.07
 [85]  0.57 -0.13 -0.01 -0.31 -0.04  0.34  0.54 -0.36  0.13  0.19  0.48  0.72
 [97]  0.43 -0.09  0.31  0.01  0.46  0.39  0.62 -0.40 -0.35  0.80  0.19  0.16
[109]  0.24 -0.44  0.33  0.44  0.86  1.07  0.89 -0.10 -0.95 -0.34 -0.34  0.07
attr(,"tsp")
[1] 2010.000 2019.917   12.000