Tạo đồng thời nhiều đặc trưng rolling
Giờ bạn đã luyện tập một vài bước tạo đặc trưng cơ bản, hãy chuyển sang nội dung phức tạp hơn. Bạn sẽ tính một nhóm đặc trưng cho dữ liệu chuỗi thời gian và trực quan hóa cách chúng thay đổi theo thời gian. Quy trình này khá giống với cách nhiều mô hình chuỗi thời gian khác hoạt động.
Bài tập này là một phần của khóa học
Machine Learning cho Dữ liệu Chuỗi thời gian bằng Python
Hướng dẫn bài tập
- Xác định một danh sách gồm bốn đặc trưng sẽ tính: giá trị nhỏ nhất, lớn nhất, trung bình và độ lệch chuẩn (theo đúng thứ tự đó).
- Sử dụng cửa sổ rolling (
prices_perc_rolling) đã được định nghĩa sẵn, hãy tính các đặc trưng từfeatures_to_calculate. - Vẽ biểu đồ kết quả theo thời gian, kèm với chuỗi thời gian gốc bằng đoạn mã đã cho.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Define a rolling window with Pandas, excluding the right-most datapoint of the window
prices_perc_rolling = prices_perc.rolling(20, min_periods=5, closed='right')
# Define the features you'll calculate for each window
features_to_calculate = [np.min, ____, ____, ____]
# Calculate these features for your rolling window object
features = prices_perc_rolling.____(features_to_calculate)
# Plot the results
ax = features.loc[:"2011-01"].plot()
prices_perc.loc[:"2011-01"].plot(ax=ax, color='k', alpha=.2, lw=3)
ax.legend(loc=(1.01, .6))
plt.show()