Tạo features và targets
Chúng ta gần như đã có features và targets sẵn sàng cho Machine Learning — ta có features từ biến động giá hiện tại (5d_close_pct) và các chỉ báo (đường trung bình động và RSI), và đã tạo targets là biến động giá trong tương lai (5d_close_future_pct). Giờ chúng ta cần tách chúng thành các mảng numpy riêng để đưa vào các thuật toán machine learning.
Các chỉ báo cũng khiến đầu DataFrame có giá trị thiếu do cách tính toán. Ta có thể backfill dữ liệu này, điền bằng một giá trị cố định, hoặc loại bỏ các hàng đó. Loại bỏ hàng là lựa chọn tốt để các thuật toán machine learning không bị nhiễu bởi dữ liệu backfill hoặc điền 0. Pandas có hàm .dropna() mà chúng ta sẽ dùng để loại mọi hàng có giá trị thiếu.
Bài tập này là một phần của khóa học
Machine Learning cho Tài chính bằng Python
Hướng dẫn bài tập
- Loại bỏ các giá trị thiếu khỏi
lng_dfbằng.dropna()của pandas. - Tạo một biến chứa targets, chính là các giá trị
'5d_close_future_pct'. - Tạo một DataFrame chứa cả targets (
5d_close_future_pct) và features (nằm trong list hiện cófeature_names) để bạn có thể kiểm tra tương quan.
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.
# Drop all na values
lng_df = lng_df.____
# Create features and targets
# use feature_names for features; '5d_close_future_pct' for targets
features = lng_df[feature_names]
targets = lng_df[____]
# Create DataFrame from target column and feature columns
feature_and_target_cols = ['5d_close_future_pct'] + ____
feat_targ_df = lng_df[feature_and_target_cols]
# Calculate correlation matrix
corr = feat_targ_df.corr()
print(corr)