Začněte nyníZačněte zdarma

Transformace surových dat

V předchozí kapitole jsi počítal/a klouzavý průměr. V tomto cvičení definuješ funkci, která vypočítá procentuální změnu nejnovějšího datového bodu vůči průměru okna předchozích hodnot. Tato funkce ti pomůže zjistit procentuální změnu přes klouzavé okno.

Jde o stabilnější typ časové řady, který se v machine learning velmi hodí.

Toto cvičení je součástí kurzu

Machine Learning pro data časových řad v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Definuj funkci percent_change, která přijímá vstupní časovou řadu a provede následující:
    • Extrahuj všechny hodnoty vstupní řady kromě poslední (ulož je do previous_values) a pouze poslední hodnotu časové řady (ulož ji do last_value).
    • Vypočítej procentuální rozdíl mezi poslední hodnotou a průměrem předchozích hodnot.
  • S použitím klouzavého okna o velikosti 20 aplikuj tuto funkci na prices a výsledek vizualizuj pomocí připraveného kódu.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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()
Upravit a spustit kód