CommencerCommencez gratuitement

Créer des variables explicatives et des cibles

Nous avons presque des variables explicatives et des cibles prêtes pour le Machine Learning : nous avons des variables basées sur les variations de prix actuelles (5d_close_pct) et sur des indicateurs (moyennes mobiles et RSI), et nous avons créé des cibles correspondant aux variations de prix futures (5d_close_future_pct). Il nous reste à les séparer en tableaux numpy distincts pour pouvoir les transmettre aux algorithmes de Machine Learning.

Nos indicateurs génèrent également des valeurs manquantes au début du DataFrame en raison des calculs. Nous pourrions rétroremplir ces données, les remplir avec une valeur unique, ou supprimer les lignes concernées. Supprimer les lignes est un bon choix, afin que nos algorithmes de Machine Learning ne soient pas perturbés par des données rétroremplies ou remplies de zéros. Pandas propose une fonction .dropna() que nous allons utiliser pour supprimer toute ligne contenant des valeurs manquantes.

Cet exercice fait partie du cours

<cours>Machine Learning pour la finance en Python</cours>
Voir le cours

Instructions de l’exercice

  • Supprimez les valeurs manquantes de lng_df avec .dropna() de pandas.
  • Créez une variable contenant nos cibles, à savoir les valeurs de '5d_close_future_pct'.
  • Créez un DataFrame contenant à la fois les cibles (5d_close_future_pct) et les variables explicatives (présentes dans la liste existante feature_names) afin de pouvoir vérifier les corrélations.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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)
Modifier et exécuter le code