НачатьНачать бесплатно

Создание признаков и целевых переменных

Мы почти подготовили признаки и целевые переменные для машинного обучения: у нас есть признаки на основе текущих изменений цены (5d_close_pct) и индикаторы (скользящие средние и RSI), а также созданные целевые переменные — будущие изменения цены (5d_close_future_pct). Теперь нужно разбить всё это на отдельные массивы numpy, чтобы передать их в алгоритмы машинного обучения.

Из-за особенностей расчёта индикаторов в начале DataFrame появляются пропущенные значения. Их можно заполнить обратным заполнением, константой или просто удалить строки с пропусками. Удаление — наиболее предпочтительный вариант: оно не вносит искусственных данных, которые могут сбить алгоритмы машинного обучения с толку. Для этого в pandas есть функция .dropna(), которую мы и используем.

Это упражнение является частью курса

Машинное обучение для финансов на Python

Посмотреть курс

Инструкции к упражнению

  • Удалите пропущенные значения из lng_df с помощью .dropna() из pandas.
  • Создайте переменную, содержащую целевые переменные — значения '5d_close_future_pct'.
  • Создайте DataFrame, включающий как целевые переменные (5d_close_future_pct), так и признаки (из существующего списка feature_names), чтобы проверить корреляции.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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)
Редактировать и запускать код