Update Readme.md

parent c29bd8ad
......@@ -48,16 +48,16 @@ print("Maximum :", np.max(donnees))
import matplotlib.pyplot as plt
# Affichage graphique : Séquence plot + histogramme
% Affichage graphique : Séquence plot + histogramme
fig, axs = plt.subplots(2, 1, figsize=(10, 8))
# Séquence plot
% Séquence plot
axs[0].plot(donnees, marker='o', linestyle='-', color='blue')
axs[0].set_title("Séquence plot des données")
axs[0].set_xlabel("Index")
axs[0].set_ylabel("Valeur")
# Histogramme
% Histogramme
axs[1].hist(donnees, bins=15, color='skyblue', edgecolor='black')
axs[1].set_title("Histogramme des données")
axs[1].set_xlabel("Valeur")
......@@ -74,3 +74,64 @@ plt.show()
- Une analyse réplicable est plus facile à modifier pour de nouveaux cas et plus simple à vérifier par d'autres chercheurs. Elle renforce la fiabilité et la reproductibilité des résultats.
### Module3 Exo1
#### Modification du code pour utiliser une copie locale des données
Au lieu de télécharger les données du Réseau Sentinelles à chaque exécution, nous allons :
1. Vérifier si une copie locale existe déjà.
2. Si ce n’est pas le cas, télécharger le fichier CSV et le sauvegarder localement.
3. Charger les données à partir du fichier local.
python
import pathlib
import requests
import pandas as pd
#### URL d’origine
data_url = "http://www.sentiweb.fr/datasets/incidence-PAY-3.csv"
local_file = pathlib.Path("data/incidence_grippal.csv")
#### Créer le dossier 'data' si nécessaire
local_file.parent.mkdir(parents=True, exist_ok=True)
#### Télécharger si la copie locale n'existe pas encore
if not local_file.exists():
print("Téléchargement du fichier depuis le Réseau Sentinelles…")
response = requests.get(data_url, timeout=30)
response.raise_for_status()
local_file.write_bytes(response.content)
print(f"✅ Données sauvegardées dans : {local_file}")
else:
print(f"✅ Données locales déjà présentes : {local_file}")
#### Lecture du fichier CSV local
raw_data = pd.read_csv(local_file, skiprows=1)
### Nettoyage et vérification des données avant l’analyse
Avant de tracer les courbes, il faut :
- Supprimer les espaces éventuels dans les noms de colonnes.
- Convertir la colonne 'inc' en données numériques.
- Vérifier que la colonne 'inc' contient bien des données valides.
#### Étape 1 : Supprimer les espaces autour des noms de colonnes
sorted_data.columns = sorted_data.columns.str.strip()
#### Étape 2 : Convertir la colonne 'inc' en type numérique
sorted_data['inc'] = pd.to_numeric(sorted_data['inc'], errors='coerce')
#### Étape 3 : Vérifier les données
print("Valeurs manquantes dans 'inc' :", sorted_data['inc'].isnull().sum())
print("Valeurs valides dans 'inc' :", sorted_data['inc'].notnull().sum())
#### Étape 4 : Tracer la courbe
sorted_data['inc'].plot()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment