https://github.com/camara94/data_analyse_series_temporelles
Dans ce tutoriel, nous allons répondre aux questions suivantes: 1. Lire les données Microsoft à l'aide du package **Pandas Data reader** 2. Obtenez le **prix maximum** de l'action de **2017 à 2022** 3. Quelle est la **date du cours le plus élevé** de l'action ? 4. Quelle est la **date du cours le plus bas** de l'action ?
https://github.com/camara94/data_analyse_series_temporelles
data-analysis data-analysis-python data-science data-structures-and-algorithms data-visualization serie series-forecasting
Last synced: 2 months ago
JSON representation
Dans ce tutoriel, nous allons répondre aux questions suivantes: 1. Lire les données Microsoft à l'aide du package **Pandas Data reader** 2. Obtenez le **prix maximum** de l'action de **2017 à 2022** 3. Quelle est la **date du cours le plus élevé** de l'action ? 4. Quelle est la **date du cours le plus bas** de l'action ?
- Host: GitHub
- URL: https://github.com/camara94/data_analyse_series_temporelles
- Owner: camara94
- License: mit
- Created: 2022-02-26T01:06:37.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-02-26T05:09:31.000Z (over 3 years ago)
- Last Synced: 2025-02-15T08:43:58.692Z (4 months ago)
- Topics: data-analysis, data-analysis-python, data-science, data-structures-and-algorithms, data-visualization, serie, series-forecasting
- Language: Jupyter Notebook
- Homepage:
- Size: 354 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Support: support.pdf
Awesome Lists containing this project
README
# Data Analyse Series Temporelles
Dans ce tutoriel, nous allons répondre aux questions suivantes:
1. Lire les données Microsoft à l'aide du package **Pandas Data reader**
2. Obtenez le **prix maximum** de l'action de **2017 à 2022**
3. Quelle est la **date du cours le plus élevé** de l'action ?
4. Quelle est la **date du cours le plus bas** de l'action ?## Installation du Package pandas_reader
!pip install pandas-datareader## Importation des Package
import pandas_datareader as pdr
import matplotlib.pyplot as plt
import numpy as np
plt.style.use('ggplot')
%matplotlib inline## Site Yahoo Finance
Nous allons récupérer la référence de Microsoft sur le **site de yahoo finances** à travers ce lien ci-dessous:
[https://finance.yahoo.com/quote/MSFT/](https://finance.yahoo.com/quote/MSFT/)
## Créer le Dataset des Actions de microsoft
df_microsoft = pdr.get_data_yahoo('MSFT')## Répresantation de la Colonne Close
plt.figure(figsize=(16,6))
plt.plot(df_microsoft.loc['2017','Close'])## Quelques Aggrégations
les_max = df_microsoft.High.resample('W').agg(['max', 'mean'])
les_min = df_microsoft.High.resample('W').agg(['min'])## Répresentation Personnalisée
plt.figure(figsize=(16,6))
les_max['2018']['mean'].plot(c='green')
plt.fill_between(
les_max['2018'].index,
les_max['2018']['max'],
les_min['2018']['min'],
alpha=0.3
)## Les Prix Minimum et Maximum de 2017 à 2022
price_max_from_2017_to_2022 = df_microsoft.High.agg(['max'])
price_min_from_2017_to_2022 = df_microsoft.Low.agg(['min'])## Affichage du Prix Minimum et Maximum
index_max = df_microsoft[df_microsoft['High'] == price_max_from_2017_to_2022['max']].index
index_min = df_microsoft[df_microsoft['Low'] == price_min_from_2017_to_2022['min']].index
plt.figure(figsize=(16, 8))
plt.plot(df_microsoft.index, df_microsoft.High, c='g')
plt.scatter(np.array([index_max]), price_max_from_2017_to_2022['max'], lw=13, c="b", label=f'Le {index_max[0].strftime("%d/%m%Y")}')
plt.scatter(np.array([index_min]), price_min_from_2017_to_2022['min'], lw=13, c="r" , label=f'Le {index_min[0].strftime("%d/%m/%Y")}')
plt.legend()## Définition d'une periode_fr
Cette fonction permet de retourner la periode en français
def periode_fr(periode):
p = ''
if periode == 'Q':
p = 'Trimestre'
elif periode == 'M':
p = 'Mois'
elif periode == 'D':
p = 'Jour'
elif periode == 'W':
p = 'Semaine'
return p## Répresentation Personnalisée des Colonnes
def graphiphique_perso(df_microsoft, periode, annee, col, fun_agg, c='g'):
data = df_microsoft.resample(periode).agg(['max', 'mean', 'min']);
plt.figure(figsize=(16, 5))
plt.plot(data[annee][col][fun_agg], label=f'{fun_agg}', c=c)
plt.fill_between(
data[annee][col].index,
data[annee][col]['min'],
data[annee][col]['max'],
alpha=0.3)
plt.title(f'L\'analyse de la colonne {col} par {periode_fr(periode)}')
plt.legend();