开始使用免费开始使用

创建特征和目标

我们已经「几乎」准备好了可用于机器学习的特征和目标——我们有来自当前价格变动(5d_close_pct)和技术指标(移动平均与 RSI)的特征,并创建了未来价格变动(5d_close_future_pct)作为目标。现在需要把它们拆分为独立的 numpy 数组,以便输入到机器学习算法中。

由于这些指标的计算,DataFrame 开头会出现缺失值。我们可以向后填充、用单一数值填充,或直接删除这些行。为避免回填或用 0 填充的数据干扰机器学习算法,删除这些行是个不错的选择。Pandas 提供了 .dropna() 函数,可用于删除包含缺失值的任何行。

本练习是课程的一部分

Python 金融机器学习

查看课程

练习说明

  • 使用 pandas 的 .dropna()lng_df 中删除缺失值。
  • 创建一个包含我们目标值的变量,即 '5d_close_future_pct'
  • 创建一个同时包含目标(5d_close_future_pct)和特征(在现有列表 feature_names 中)的 DataFrame,以便检查相关性。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# 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)
编辑并运行代码