Explorer les données avec un peu d'EDA
Commençons par explorer les données. Chaque fois que nous lançons un projet de Machine Learning (ML), nous devons d'abord réaliser une analyse exploratoire des données (EDA) pour nous familiariser avec le jeu de données. Cela inclut notamment :
- des graphiques des données brutes ;
- des histogrammes ;
- et bien plus encore…
Je commence généralement par des graphiques de données brutes et des histogrammes. Cela nous permet de comprendre les distributions de nos données. Si elles suivent une loi normale, nous pouvons utiliser des statistiques paramétriques.
Deux actions sont déjà chargées dans des DataFrames pandas : lng_df et spy_df (LNG et SPY). Examinez-les avec .head(). Nous utiliserons les cours de clôture et, par la suite, les volumes comme entrées pour des algorithmes de ML.
Remarque : nous appellerons plt.clf() chaque fois que nous souhaitons créer un nouveau graphique, ou f = plt.figure().
Cet exercice fait partie du cours
<cours>Machine Learning pour la finance en Python</cours>Instructions de l’exercice
- Affichez les 5 premières lignes des deux DataFrames (
lng_dfetspy_df) et examinez leur contenu. - Utilisez la bibliothèque pandas pour tracer les séries temporelles brutes de
'SPY'et'LNG'avec le cours de clôture ajusté ('Adj_Close') — définissezlegend=Truedans.plot(). - Utilisez
plt.show()pour afficher le graphique des séries temporelles brutes (matplotlib.pyplota été importé sous le nomplt). - Utilisez pandas et matplotlib pour créer un histogramme de la variation en pourcentage sur 1 jour du cours de clôture ajusté (utilisez
.pct_change()) pour SPY et LNG.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
print(lng_df.head()) # examine the DataFrames
print(____) # examine the SPY DataFrame
# Plot the Adj_Close columns for SPY and LNG
spy_df[____].plot(label='SPY', legend=True)
lng_df[____].plot(label=____, ____, secondary_y=True)
____ # show the plot
plt.clf() # clear the plot space
# Histogram of the daily price change percent of Adj_Close for LNG
lng_df['Adj_Close'].____.plot.hist(bins=50)
plt.xlabel('adjusted close 1-day percent change')
plt.show()