Zacznij terazZacznij za darmo

Przekształcanie surowych danych

W poprzednim rozdziale obliczać średnią kroczącą. W tym ćwiczeniu zdefiniujesz funkcję, która oblicza procentową zmianę ostatniego punktu danych względem średniej z okna poprzednich punktów. Funkcja ta pozwoli ci wyznaczać zmianę procentową w kroczącym oknie czasowym.

To bardziej stabilny rodzaj szeregu czasowego, który często sprawdza się w uczeniu maszynowym.

To ćwiczenie jest częścią kursu

Uczenie maszynowe dla danych szeregów czasowych w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zdefiniuj funkcję percent_change, która przyjmuje szereg czasowy i wykonuje następujące kroki:
    • Wyodrębnij wszystkie wartości szeregu oprócz ostatniej (przypisz je do previous_values) oraz tylko ostatnią wartość szeregu (przypisz ją do last_value).
    • Oblicz procentową różnicę między ostatnią wartością a średnią wcześniejszych wartości.
  • Używając kroczącego okna o rozmiarze 20, zastosuj tę funkcję do prices i zwizualizuj wynik za pomocą dostarczonego kodu.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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()
Edytuj i uruchom kod