Features en targets maken
We hebben bijna features en targets die klaar zijn voor Machine Learning — we hebben features uit huidige prijsveranderingen (5d_close_pct) en indicatoren (voortschrijdende gemiddelden en RSI), en we hebben targets gemaakt van toekomstige prijsveranderingen (5d_close_future_pct). Nu moeten we deze opsplitsen in aparte numpy-arrays zodat we ze kunnen voeren aan Machine Learning-algoritmen.
Onze indicatoren zorgen er ook voor dat we aan het begin van de DataFrame ontbrekende waarden hebben door de berekeningen. We zouden deze data kunnen backfillen, opvullen met één waarde of de rijen verwijderen. Rijen verwijderen is een goede keuze, zodat onze Machine Learning-algoritmen niet in de war raken door backfilled of met 0 gevulde data. Pandas heeft een functie .dropna() waarmee we rijen met ontbrekende waarden verwijderen.
Deze oefening maakt deel uit van de cursus
Machine Learning voor finance in Python
Oefeninstructies
- Verwijder de ontbrekende waarden uit
lng_dfmet.dropna()van pandas. - Maak een variabele met onze targets, dat zijn de waarden van
'5d_close_future_pct'. - Maak een DataFrame met zowel de targets (
5d_close_future_pct) als de features (die in de bestaande lijstfeature_namesstaan), zodat we de correlaties kunnen controleren.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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)