Перетворення сирих даних
У попередньому розділі ви обчислювали ковзне середнє. У цій вправі ви визначите функцію, яка рахує відсоткову зміну останньої точки даних від середнього значення у вікні попередніх точок. Ця функція допоможе вам обчислювати відсоткову зміну на ковзному вікні.
Це стабільніший тип часових рядів, який часто корисний у машинному навчанні.
Ця вправа є частиною курсу
Machine Learning для часових рядів у Python
Інструкції до вправи
- Визначте функцію
percent_change, яка приймає часовий ряд на вхід і виконує таке:- Витягніть усі значення, окрім останнього, з вхідного ряду (присвойте до
previous_values), а також лише останнє значення часового ряду (присвойте доlast_value). - Обчисліть відсоткову різницю між останнім значенням і середнім попередніх значень.
- Витягніть усі значення, окрім останнього, з вхідного ряду (присвойте до
- Використовуючи ковзне вікно розміру 20, застосуйте цю функцію до
pricesі візуалізуйте результат за допомогою наданого коду.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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()