НачатьНачать бесплатно

Преобразование исходных данных

В предыдущей главе вы вычисляли скользящее среднее. В этом упражнении вы определите функцию, которая рассчитывает процентное изменение последней точки данных относительно среднего значения по предшествующим точкам скользящего окна. Это поможет вам вычислить процентное изменение на скользящем окне.

Такой вид временного ряда отличается большей стабильностью и нередко оказывается полезным в задачах машинного обучения.

Это упражнение является частью курса

Машинное обучение для данных временных рядов на Python

Посмотреть курс

Инструкции к упражнению

  • Определите функцию percent_change, которая принимает входной временной ряд и выполняет следующие действия:
    • Извлекает все значения ряда, кроме последнего (присваивает их переменной previous_values), и только последнее значение ряда (присваивает его переменной last_value).
    • Вычисляет процентное отклонение последнего значения от среднего по предшествующим значениям.
  • Примените эту функцию к prices со скользящим окном размером 20 и визуализируйте результат с помощью предоставленного кода.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Your custom function
def percent_change(series):
    # Collect all *but* the last value of this window, then the final value
    previous_values = series[:____]
    last_value = series[-1]

    # Calculate the % difference between the last value and the mean of earlier values
    percent_change = (____ - np.mean(previous_values)) / np.mean(previous_values)
    return percent_change

# Apply your custom function and plot
prices_perc = prices.rolling(20).____
prices_perc.loc["2014":"2015"].plot()
plt.show()
Редактировать и запускать код