Выборка данных и изменение периодичности
Следующий шаг — объединить данные о температуре с данными о рейсах из предыдущей главы.
Напомним, что данные о рейсах охватывают период с 2010 по 2015 год в месячной периодичности. Данные о температуре, напротив, охватывают период с 2007 по 2015 год в дневной периодичности. Перед объединением необходимо выполнить выборку данных и привести их к одной периодичности — месячной.
Для изменения периодичности xts-объектов используйте функцию to.period(), которая позволяет быстро перейти к более низкой частоте. По умолчанию команда вычисляет специфические значения для каждого периода (а именно: открытие, максимум, минимум и закрытие — OHLC), которые полезны в финансовом анализе, но не всегда нужны в других задачах.
В данном случае установите аргумент OHLC в FALSE. Вместо создания OHLC-столбцов функция просто возьмёт одну строку из каждого периода как представительную. Нужную строку можно указать с помощью аргумента indexAt.
Оба набора данных — temps_xts и flights_xts из предыдущей главы — доступны в вашем рабочем пространстве.
Это упражнение является частью курса
Практический пример: анализ городских временных рядов в R
Инструкции к упражнению
- Выполните выборку из объекта
temps_xts, оставив только наблюдения с 2010 по 2015 год. Сохраните результат какtemps_xts_2. - Используйте
to.period(), чтобы преобразовать дневные данные о температуре в месячную периодичность. Обязательно укажите целевой период ("months"), установитеOHLCвFALSE, чтобы не создавать новые OHLC-столбцы, и задайте аргументindexAtравным"firstof", чтобы выбирать первое наблюдение каждого месяца. - Выполните два вызова функции
periodicity(), чтобы сравнить периодичность и диапазон нового объекта с месячными данными о температуре и объектаflights_xtsиз предыдущей главы.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Subset your temperature data to include only 2010 through 2015: temps_xts_2
temps_xts_2 <- ___["___/___"]
# Use to.period to convert temps_xts_2 to monthly periodicity
temps_monthly <- to.period(___, period = "___", OHLC = ___, indexAt = "___")
# Compare the periodicity and duration of temps_monthly and flights_xts
periodicity(___)
periodicity(___)