Crea las variables explicativas y los objetivos
Ya tenemos casi listas las variables explicativas y los objetivos para Machine Learning: contamos con variables a partir de cambios de precio actuales (5d_close_pct) e indicadores (medias móviles y RSI), y creamos objetivos con cambios de precio futuros (5d_close_future_pct). Ahora necesitamos separarlos en distintos arrays de numpy para poder pasarlos a los algoritmos de Machine Learning.
Nuestros indicadores también provocan valores ausentes al inicio del DataFrame debido a los cálculos. Podríamos hacer backfill, rellenar con un único valor o eliminar las filas. Eliminar las filas es una buena opción para que los algoritmos de Machine Learning no se confundan con datos rellenados hacia atrás o con ceros. Pandas tiene una función .dropna() que usaremos para eliminar cualquier fila con valores ausentes.
Este ejercicio forma parte del curso
Machine Learning para finanzas con Python
Instrucciones del ejercicio
- Elimina los valores ausentes de
lng_dfcon.dropna()de pandas. - Crea una variable que contenga nuestros objetivos, que son los valores de
'5d_close_future_pct'. - Crea un DataFrame que incluya tanto los objetivos (
5d_close_future_pct) como las variables explicativas (incluidas en la lista existentefeature_names) para poder comprobar las correlaciones.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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)