Examen de la session de Rattrapage
Filière : Génie Informatique /
A.U. 2025/2026
Informatique Appliquée
Durée : 1h30
Module : Python pour l’IA
Pr. Achraf BERRAJAA
Documents de cours interdits – Téléphones portables interdits
QCM (5 pts) (Choisir la bonne réponse)
1) Quelle fonction permet de lire un fichier CSV ? A. LinearModel
A. [Link]() B. LinearRegression
B. pd.load_csv() C. RegressionLinear
C. pd.read_csv() D. SimpleRegression
D. pd.import_csv() Réponse :
Réponse :
7) Quelle métrique est utilisée pour la classification ?
2) Quelle méthode affiche les 5 premières lignes d’un DataFrame ? A. MSE
A. [Link]() B. R2
B. [Link](5) C. Accuracy
C. [Link]() D. RMSE
D. [Link](5) Réponse :
Réponse :
8) Que représente K dans KMeans ?
3) Quelle instruction permet de filtrer les lignes où Age > 30 ? A. Le nombre d’itérations
A. [Link](Age > 30) B. Le nombre de features
B. df[df[’Age’] > 30] C. Le nombre de clusters
C. [Link](Age > 30) D. Le nombre de points
D. [Link](Age > 30) Réponse :
Réponse :
9) Quelle est la fonction de coût minimisée par l’algorithme
4) Comment remplacer les valeurs manquantes par la moyenne ? KMeans ?
A. [Link](mean) A. La somme des distances entre les centres des clusters
B. [Link]([Link]()) B. La somme des distances entre chaque point et le centre de son
C. [Link]([Link]()) cluster
D. [Link](mean) C. La moyenne des distances entre tous les points
Réponse : D. La variance totale du dataset
Réponse :
5) Quelle structure représente une colonne Pandas ?
A. DataFrame 10) Dans Scikit-learn, quelle variable contient la valeur de la
B. ndarray fonction de coût après l’entraînement de KMeans ?
C. Series A. model.cost_
D. List B. model.score_
Réponse : C. model.inertia_
D. model.loss_
6) Quelle classe est utilisée pour la régression linéaire ?
Réponse :
Exercices 1 (5 pts) : Les bases de NumPy
1. Créer un tableau NumPy de 20 nombres aléatoires entre 0 et 100.
— Trouver la moyenne, la médiane et l’écart-type.
— Remplacer tous les nombres supérieurs à 50 par 50.
2. Créer deux matrices 3 × 3 et effectuer : addition, soustraction, multiplication élément par élément et multi-
plication matricielle.
3. Générer un tableau de 100 nombres aléatoires suivant une distribution normale et afficher la proportion de
nombres compris entre −1 et 1.
nombre d’éléments vérifiant une condition
Proportion =
nombre total d’éléments
4. Créer un tableau 1D, puis le transformer en tableau 2D (reshape) et inverser les lignes et colonnes.
1/2 A.U. 2025/2026
Exercice 2 (10 pts) : Analyse et modélisation avec le dataset Iris
Introduction et objectifs
Le dataset Iris contient des informations sur des fleurs iris de trois espèces différentes (Setosa, Versicolor, Virgi-
nica). Chaque fleur est caractérisée par quatre mesures : longueur et largeur des sépales et des pétales.
L’objectif de cet exercice est de :
— Manipuler et nettoyer les données avec pandas.
— Effectuer des calculs statistiques par groupe pour analyser le dataset.
— Proposer un modèle de machine learning (Scikit-learn) afin de prédire l’espèce de la fleur.
Partie 1 : Exploration des données / Analyse statistique (4 pts)
Questions :
1. Charger le fichier [Link] dans un DataFrame df avec pandas.
2. Calculer la moyenne de chaque caractéristique (sepal_length, sepal_width, petal_length, petal_width)
par espèce.
3. Identifier l’espèce avec la plus grande moyenne de petal_length.
4. Trouver la fleur ayant le plus grand sepal_length et afficher son espèce et ses mesures.
5. Afficher un tableau récapitulatif (statistiques descriptives) pour chaque espèce.
Partie 2 : Préparation et modélisation (4 pts)
Supposition : Le dataset contient uniquement les colonnes suivantes :
[’sepal_length’, ’sepal_width’, ’petal_length’, ’petal_width’, ’species’].
Questions :
6. Séparer les données en features X et target y (target = species).
7. Séparer les données en ensembles d’entraînement et de test (ex. 80% / 20%).
8. Proposer un modèle de machine learning et l’entraîner sur les données d’entraînement.
9. Faire des prédictions sur l’ensemble de test.
10. Évaluer le modèle en utilisant les métriques appropriées.
Partie 3 : Visualisation des données (2 pts)
11. Tracer un scatter plot représentant petal_length en fonction de petal_width.
— Chaque espèce doit être affichée avec une couleur différente.
— Ajouter une légende et des labels pour les axes.
12. Tracer un diagramme en barres représentant la moyenne de petal_length pour chaque espèce.
2/2 A.U. 2025/2026