Tampilkan rata-rata rolling
Anda juga dapat memvisualisasikan rata-rata rolling dari nilai pada deret waktu Anda. Ini setara dengan "menghaluskan" data, dan sangat berguna terutama ketika deret waktu Anda mengandung banyak derau atau pencilan. Untuk suatu DataFrame df, Anda dapat memperoleh rata-rata rolling dari deret waktu dengan perintah:
df_mean = df.rolling(window=12).mean()
Parameter window harus diatur sesuai dengan granularitas deret waktu Anda. Misalnya, jika deret waktu Anda berisi data harian dan Anda mencari nilai rolling selama satu tahun penuh, Anda harus menetapkan parameter window=365. Selain itu, Anda juga mudah mendapatkan nilai rolling untuk metrik lain, seperti simpangan baku (.std()) atau varians (.var()).
Latihan ini adalah bagian dari kursus
Memvisualisasikan Data Deret Waktu di Python
Petunjuk latihan
- Hitung rata-rata rolling 52 minggu dari
co2_levelsdan simpan kema. - Hitung simpangan baku rolling 52 minggu dari
co2_levelsdan simpan kemstd. - Hitung batas atas deret waktu yang didefinisikan sebagai rata-rata rolling + (2 × simpangan baku rolling) dan simpan ke
ma[upper]. Demikian pula, hitung batas bawah sebagai rata-rata rolling - (2 × simpangan baku rolling) dan simpan kema[lower]. - Plot bagan garis dari
ma.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Compute the 52 weeks rolling mean of the co2_levels DataFrame
ma = ____.rolling(window=____).____()
# Compute the 52 weeks rolling standard deviation of the co2_levels DataFrame
mstd = ____
# Add the upper bound column to the ma DataFrame
ma['upper'] = ma['co2'] + (____ * ____)
# Add the lower bound column to the ma DataFrame
ma['lower'] = ma['co2'] - (____ * ____)
# Plot the content of the ma DataFrame
ax = ____(linewidth=0.8, fontsize=6)
# Specify labels, legend, and show the plot
ax.set_xlabel('Date', fontsize=10)
ax.set_ylabel('CO2 levels in Mauai Hawaii', fontsize=10)
ax.set_title('Rolling mean and variance of CO2 levels\nin Mauai Hawaii from 1958 to 2001', fontsize=10)
plt.show()