Объединить временные ряды в R

Опубликовано: 11 Сентября, 2022

В этой статье мы обсудим, как объединить временные ряды на языке программирования R.

Временные ряды в R используются для анализа поведения объекта за определенный период времени. В языке R это можно сделать с помощью функции ts(). Временной ряд принимает вектор данных, и каждые данные связаны со значением метки времени. Функция ts() используется для прогнозирования поведения актива в бизнесе за определенный период времени.

Syntax: ts(data, start, end, frequency)

Parameters:

  • data: determines the data vector used.
  • start: determines the date stamp of the first observation.
  • end: determines the date stamp of the last observation.
  • frequency: determines the number of observations per unit time.

Пример: создание временных рядов с использованием векторных данных с помощью функции ts()

R




# create data vector
x <- c(1,2,3,4,5,6,7,8,9,10,
       11,12,13,14,15,16,17)
  
# creating time series object
# from date October, 2021
ts(x, c(2021,10),frequency=12 )

Выход:

       Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2021                                       1   2   3
2022   4   5   6   7   8   9  10  11  12  13  14  15
2023  16  17 

Объединить временные ряды в R

Чтобы объединить два временных ряда в R, мы используем функцию ts(), но в качестве данных параметра мы передаем вектор, содержащий все временные ряды, которые необходимо объединить.

Syntax: ts( c(ts_1, ts_2), start = start(ts_1),  frequency = frequency(ts_1) )

Пример:

Здесь мы создали два временных ряда и объединили их, используя приведенный выше синтаксис.

R




# create data vectors
x <- c(1,2,3,4,5,6,7,8,9,10,11,12)
y <- c(13,14,15,16,17,18,19,20,21,22,23,24)
  
# creating time series objects
ts_1 <- ts(x, c(2021,10),frequency=12 )
ts_2 <- ts(y, c(2022,10),frequency=12 )
  
# merge time series
merged_ts <- ts(c(ts_1, ts_2),               
   start = start(ts_1),
   frequency = frequency(ts_1))
  
# print merged time series
merged_ts

Выход:

     Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2021                                       1   2   3
2022   4   5   6   7   8   9  10  11  12  13  14  15
2023  16  17  18  19  20  21  22  23  24