Criar features e targets
Estamos quase com features e targets prontos para Machine Learning — temos features a partir das variações de preço atuais (5d_close_pct) e indicadores (médias móveis e RSI), e criamos targets com as variações de preço futuras (5d_close_future_pct). Agora, precisamos separá-los em arrays do numpy para alimentar os algoritmos de machine learning.
Os nossos indicadores também geram valores ausentes no início do DataFrame por causa dos cálculos. Podemos fazer backfill desses dados, preencher com um único valor ou remover as linhas. Remover as linhas é uma boa escolha, assim os algoritmos de machine learning não se confundem com dados preenchidos artificialmente ou com zeros. O pandas tem a função .dropna(), que vamos usar para eliminar quaisquer linhas com valores ausentes.
Este exercicio faz parte do curso
Machine Learning para Finanças em Python
Instruções do exercicio
- Remova os valores ausentes de
lng_dfcom.dropna()do pandas. - Crie uma variável contendo nossos targets, que são os valores de
'5d_close_future_pct'. - Crie um DataFrame contendo tanto os targets (
5d_close_future_pct) quanto as features (contidas na lista existentefeature_names) para que possamos verificar as correlações.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# 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)