Skapa tidsförskjutna särdrag
Inom maskininlärning för tidsserier är det vanligt att använda information från tidigare tidpunkter för att förutsäga en efterföljande tidpunkt.
I den här övningen ska du "förskjuta" dina rådata och visualisera resultaten. Du använder tidsserien för procentuell förändring som du beräknade i föregående kapitel, den här gången med ett mycket kort fönster. Ett kort fönster är viktigt eftersom du i ett verkligt scenario vill förutsäga de dagliga svängningarna i en tidsserie, inte förändringen över ett längre tidsfönster.
Den här övningen är en del av kursen
Maskininlärning för tidsseriedata i Python
Övningsinstruktioner
- Använd en dictionary comprehension för att skapa flera tidsförskjutna versioner av
prices_percmed de fördröjningar som anges ishifts. - Konvertera resultatet till en DataFrame.
- Använd den givna koden för att visualisera resultaten.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# These are the "time lags"
shifts = np.arange(1, 11).astype(int)
# Use a dictionary comprehension to create name: value pairs, one pair per shift
shifted_data = {"lag_{}_day".format(day_shift): prices_perc.____(____) for day_shift in shifts}
# Convert into a DataFrame for subsequent use
prices_perc_shifted = ____(shifted_data)
# Plot the first 100 samples of each
ax = prices_perc_shifted.iloc[:100].plot(cmap=plt.cm.viridis)
prices_perc.iloc[:100].plot(color='r', lw=2)
ax.legend(loc='best')
plt.show()