0% ont trouvé ce document utile (0 vote)
3 vues3 pages

TP4 Python For AI

Le document présente un TP sur la manipulation de données avec la bibliothèque NumPy dans le cadre d'un cours de programmation Python pour l'IA. Il inclut des exercices sur les tableaux NumPy, le calcul de statistiques, la transformation de données, et l'analyse de données météorologiques à partir de fichiers CSV. Les étudiants doivent réaliser diverses opérations telles que la récupération de données, le calcul de moyennes, et la visualisation graphique.

Transféré par

aitlabbadeh
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3 vues3 pages

TP4 Python For AI

Le document présente un TP sur la manipulation de données avec la bibliothèque NumPy dans le cadre d'un cours de programmation Python pour l'IA. Il inclut des exercices sur les tableaux NumPy, le calcul de statistiques, la transformation de données, et l'analyse de données météorologiques à partir de fichiers CSV. Les étudiants doivent réaliser diverses opérations telles que la récupération de données, le calcul de moyennes, et la visualisation graphique.

Transféré par

aitlabbadeh
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Mohammed V M.2.3.3.

Programmation Python pour l'IA


ENSIAS Responsable du Module : Pr RACHAD
Année universitaire 2025-2026

TP4 : Manipulation de données avec la bibliothèque NumPy


Exercice 1 : Manipulations de base des tableaux NumPy
Considérant le tableau python ci-dessous
import numpy as np
temperatures = [Link]([
12, 14, 15, 13, 16, 18, 20,
21, 19, 17, 16, 18, 22, 24,
25, 27, 29, 30, 28, 26, 24,
23, 21, [Link], 20, 19, 18, 17
])

1. Écrire les instructions NumPy permettant d’afficher les informations sur le tableau ( type,
dimension avec ndim, forme avec shape, taille avec size, type avec dtype).
2. Écrire les instructions permettant de :
a) récupérer la première et la dernière température ;
b) récupérer les températures de la première semaine ;
c) récupérer les températures des deux premières semaines ;
d) récupérer les températures supérieures à 25°C ;
e) récupérer les jours (indices ou noms) où la température est comprise entre 18°C et 28°C.

3. Calculer, en ignorant les valeurs manquantes :la température moyenne ; la température


minimale ; la température maximale ; la température médiane ; l’écart-type des températures ;
4. Appliquer aux températures les deux transformations suivantes et Comparer brièvement les
deux résultats:
a) normalisation Min-Max
b) standardisation Z-score

5. Transformer le tableau temperatures en une matrice T de dimension 4 x 7, où chaque ligne


représente une semaine et chaque colonne représente un jour.
6. Écrire les instructions permettant de :
a) récupérer la première semaine;
b) récupérer le troisième jour de chaque semaine;
c) calculer la température moyenne de chaque semaine ;
d) calculer la température moyenne de chaque jour de la semaine ;
e) identifier la température maximale de chaque semaine.
Nous ajoutons les déclarations suivantes :
import numpy as np
humidite = [Link]([
75, 72, 70, 73, 68, 65, 60,
58, 62, 66, 70, 67, 61, 59,
55, 52, 48, 45, 50, 53, 57,
60, 63, 66, [Link], 70, 72, 74
])

precipitations = [Link]([
2.5, 0.0, 1.2, 3.1, 0.0, 0.0, 0.5,
0.0, 1.8, 2.0, 0.0, 0.0, 0.3, 0.0,
0.0, 0.0, 0.0, 0.0, 1.1, 2.4, 0.0,
0.0, 0.7, [Link], 3.0, 1.5, 0.0, 0.0
])

1
Université Mohammed V M.2.3.3. Programmation Python pour l'IA
ENSIAS Responsable du Module : Pr RACHAD
Année universitaire 2025-2026

7. Écrire les instructions permettant de :


a) regrouper les trois variables temperatures, humidite et precipitations dans une même
matrice NumPy ;
b) supprimer les observations contenant des valeurs manquantes ;
c) calculer et afficher la matrice de corrélation entre les trois variables ;
d) tracer un nuage de points unique permettant de représenter simultanément les trois
variables :
• l’axe des abscisses représente la température ;
• l’axe des ordonnées représente l’humidité ;
• la taille ou la couleur des points représente le niveau des précipitations.
Exercice 2 : Manipulation des données météorologiques

Dans le TP n°3, les données météorologiques des stations ont été générées puis exportées dans des
fichiers CSV. Dans cette partie, l’objectif est de charger ces fichiers avec NumPy, d’organiser les
données dans des tableaux et des dictionnaires, puis de réaliser quelques analyses statistiques et
graphiques. Les fichiers possèdent la structure suivante :

annee, mois, jour, temperature, humidite, precipitations, vent, pression, indice_uv, score

2023, janvier, 1, 11.8, 73.5, 4.2, 17.1, 1016.4, 2.1, 93


2023, janvier, 2, 13.4, 76.2, 0.0, 15.8, 1019.2, 1.8, 100
2023, janvier, 3, nan, 71.4, 2.5, 18.3, 1017.6, 2.4, 75
...
2025, janvier, 1, 12.6, 74.1, 3.8, 19.0, 1018.5, 2.0, 93
2025, janvier, 2, 10.9, 78.3, 0.6, 16.4, 1015.9, 1.7, 100
...

1. Créer un dictionnaire stations permettant d’associer chaque nom de station à ses données.

stations = {
"Rabat": data_rabat,
"Casa": data_casa,
"Marrakech": data_marrakech,
"Fes": data_fes
}

Pour chaque station, charger les données du fichier CSV dans une matrice NumPy numérique. Lors de
l’importation, la colonne mois, initialement représentée par des chaînes de caractères, doit être convertie
en valeurs numériques allant de 1 à 12 :

La matrice NumPy obtenue doit contenir des colonnes qui correspondent aux données ssuivantes :annee,
mois, jour, temperature, humidite, precipitations, vent, pression, indice_uv, score.

2. Pour chaque station, écrire les instructions permettant d’afficher :


a) la forme de la matrice NumPy ;
b) le nombre total d’observations ;
c) le nombre de valeurs manquantes ;
d) les années disponibles dans les données ;
e) les mois disponibles dans les données.

3. Pour une station donnée, par exemple "Rabat", écrire les instructions permettant de récupérer :
a) toutes les données de l’année 2024 ;
b) toutes les données du mois de janvier 2024 ;

2
Université Mohammed V M.2.3.3. Programmation Python pour l'IA
ENSIAS Responsable du Module : Pr RACHAD
Année universitaire 2025-2026

c) les températures de Rabat pendant janvier 2024 ;


d) les précipitations de Rabat pendant toute l’année 2024.

4. Pour une station et une année données, écrire les instructions permettant de calculer, en ignorant
les valeurs manquantes :
a) la température moyenne annuelle ;
b) l’humidité moyenne annuelle ;
c) le total annuel des précipitations ;
d) la vitesse moyenne du vent ;
e) la pression moyenne annuelle ;
f) le score moyen annuel.

5. Écrire une fonction moyennes_mensuelles(nom_station, annee) qui retourne une matrice NumPy
de dimension 12 x 6. chaque ligne représente un mois de l’année, et chaque colonne représente la
moyenne mensuelle d’une variable météorologique : temperature, humidite, precipitations, vent,
pression, indice_uv. Les valeurs manquantes doivent être ignorées dans les calculs.
6. Pour une station et une année données, tracer une figure montrant l’évolution mensuelle des
variables suivantes : temperature, humidite, precipitations, vent.
• Avant l’affichage, appliquer une normalisation Min-Max séparément à chaque variable
afin de rendre les courbes comparables.
• La figure doit contenir:
i. les mois sur l’axe des abscisses ;
ii. les valeurs normalisées sur l’axe des ordonnées ;
iii. une courbe pour chaque variable ;
iv. un titre ;
v. une légende ;
7. Pour une station et une année données,
• extraire les colonnes numériques suivantes : temperature, humidite, precipitations.
• supprimer les lignes contenant au moins une valeur manquante ;
• calculer la matrice de corrélation entre ces variables et afficher la ;
• tracer un nuage de points permettant de représenter simultanément trois variables :
i. température sur l’axe des abscisses ;
ii. humidité sur l’axe des ordonnées ;
iii. précipitations représentées par la taille ou la couleur des points.
• Ajouter un titre, les noms des axes et une barre de couleur.

Vous aimerez peut-être aussi