0% ont trouvé ce document utile (0 vote)
8 vues287 pages

Programmation en Python 2

Le document traite de la gestion des fichiers en Python, expliquant les concepts fondamentaux tels que l'ouverture, la lecture, l'écriture et la fermeture des fichiers. Il aborde également la programmation orientée objet (POO), en définissant les classes, les objets, et les principes d'encapsulation et de polymorphisme. Des exercices pratiques sont inclus pour renforcer l'apprentissage des concepts présentés.

Transféré par

abdelaadim.h317
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)
8 vues287 pages

Programmation en Python 2

Le document traite de la gestion des fichiers en Python, expliquant les concepts fondamentaux tels que l'ouverture, la lecture, l'écriture et la fermeture des fichiers. Il aborde également la programmation orientée objet (POO), en définissant les classes, les objets, et les principes d'encapsulation et de polymorphisme. Des exercices pratiques sont inclus pour renforcer l'apprentissage des concepts présentés.

Transféré par

abdelaadim.h317
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

Matière : Programmation en python 2

Classe : MIP

Professeur : Ghazlane Yasmine

Année Universitaire : 2025/2026


Chapitre 1: Gestion des fichiers
 Qu’est-ce qu’un fichier?
 Modes d’ouverture d’un fichier
 Opérations sur un fichier

2
Chapitre 1: Gestion des fichiers (La suite)
Manipulation de fichiers

Lorsqu’un programme termine son exécution, toutes les informations


stockées dans des variables sont perdues.

Un moyen de les conserver est de les enregistrer


dans un fichier sur disque dur.
3
Chapitre 1: Gestion des fichiers (La suite)
Manipulation de fichiers
Définition d’un fichier :
• Un fichier texte est un fichier qui contient des caractères imprimables et des
espaces organisés en lignes successives, ces lignes étant séparées les unes des
autres par un caractère spécial non-imprimable appelé « marqueur de fin de
ligne ».
• Les fichiers texte sont donc des fichiers que nous pouvons lire et comprendre à
l'aide d'un simple éditeur de texte.

• Il est très facile de traiter des fichiers texte avec Python.


4
Chapitre 1: Gestion des fichiers (La suite)
Manipulation de fichiers
Etapes à suivre pour la gestion de fichiers:
• Lorsque nous voulons lire ou écrire dans un fichier, nous devons d'abord l'ouvrir.

• Lorsque nous avons terminé, il doit être fermé.

• En Python, la gestion de fichiers comprend les trois étapes suivantes:

1. Ouvrir un fichier

2. Traiter le fichier, c’est-à-dire effectuer des opérations de lecture ou d’écriture.

3. Fermer le fichier.

5
Chapitre 1: Gestion des fichiers (La suite)
Ouverture de fichiers
• Python a une fonction intégrée open() pour ouvrir un fichier. Cette fonction renvoie
un objet de fichier.

• Elle est utilisée pour lire ou modifier le fichier en conséquence.

• filename est le nom ou le chemin du fichier.


• mode est une chaîne qui spécifie le type d'opération que vous voulez effectuer sur le
fichier (c'est-à-dire lecture, écriture, ajout, etc.).

6
Chapitre 1: Gestion des fichiers (La suite)
Chemin d’un fichier
 Chaque fichier est associé à une sorte d'adresse qui permet de le trouver
facilement sans erreur.

Deux types de chemin:


• Chemin absolu qui part de la racine de votre système de fichier.

• Chemin relatif qui part du dossier en cours de lecture.

7
Chapitre 1: Gestion des fichiers (La suite)
Modes d’ouvertures

8
Chapitre 1: Gestion des fichiers (La suite)
Lecture de fichiers
• Pour lire un fichier en Python, il faut ouvrir le fichier en mode lecture r.

• Il existe différentes méthodes disponibles à cet effet. Nous pouvons utiliser la


méthode read(size) pour lire la taille d'un nombre. Si le paramètre de taille
n'est pas spécifié, il lit et renvoie le fichier entier.

9
Chapitre 1: Gestion des fichiers (La suite)
Lecture de fichiers

• Le codage par dépend de système d’exploitation.

• Donc, nous ne devons pas également compter sur le codage par défaut, sans quoi
notre code se comportera différemment selon les plateformes.

• Par conséquent, lorsque vous travaillez avec des fichiers en mode texte, il est
vivement recommandé de spécifier le type de codage.

• Le codage "utf-8".

10
Chapitre 1: Gestion des fichiers (La suite)
Lecture de fichiers

Lecture de fichiers ligne par ligne :


• Nous pouvons lire un fichier ligne par ligne en utilisant une boucle for. C'est à
la fois efficace et rapide.

11
Chapitre 1: Gestion des fichiers (La suite)
Lecture de fichiers

Lecture des fichiers toutes les lignes à la fois:


• La méthode readlines() renvoie toutes les lignes du fichier.

• La méthode readline() lit la première ligne du fichier.

12
Chapitre 1: Gestion des fichiers (La suite)
Ecriture de fichiers
• Pour écrire dans un fichier en Python, nous devons l'ouvrir en mode d’écriture w ,
append a ou exclusif création x .

• le mode w, il écrasera dans le fichier s'il existe déjà et toutes les données
précédentes sont effacées.

• Ce programme créera un nouveau fichier nommé [Link] dans le répertoire


courant s'il n'existe pas.
13
Chapitre 1: Gestion des fichiers (La suite)
Fermeture de fichiers

• Lorsque vous avez terminé d'effectuer des opérations sur le fichier,


vous devez fermer correctement le fichier.

14
Chapitre 1: Gestion des fichiers (La suite)
Supression de fichiers

• Pour supprimer un fichier, vous devez importer le module OS et exécuter sa


fonction [Link]() :

• Ce module est une bibliothèque dédiée aux besoins de gestion de fichiers et de de


dossiers.

15
Chapitre 1: Gestion des fichiers (La suite)
Autres méthodes
Méthode strip() :
• La méthode strip() retourne une copie de la chaîne avec les premiers et derniers caractères supprimés.

16
Chapitre 1: Gestion des fichiers (La suite)
Autres méthodes
Méthode strip() :
• La méthode strip() prend un seul paramètre:

 caractères (Optionnel) : une chaîne spécifiant le jeu de caractères à supprimer. Si l’argument


caractères n’est pas fourni, tous les espaces au début et à la fin sont supprimés de la chaîne.

17
Chapitre 1: Gestion des fichiers (La suite)
Autres méthodes

Fonction writelines() :
• La fonction writelines() est destinée à écrire la variable de type liste, généralement lue
par readlines().

18
Chapitre 1: Gestion des fichiers (La suite)
Autres méthodes

19
Quiz

20
Chapitre 1: Gestion des fichiers (La suite)

1. Comment ouvrir un fichier en mode lecture en Python ?


a) open("[Link]", "r")
b) open("[Link]", "w")
c) open("[Link]", "a")
d) open("[Link]", "rb") 4. Comment écrire une ligne dans un fichier en Python ?
a) [Link]("Nouvelle ligne")
2. Comment fermer un fichier après avoir terminé de le b) [Link]("Nouvelle ligne")
manipuler en Python ? c) file.add_line("Nouvelle ligne")
a) [Link]() d) file.write_line("Nouvelle ligne")
b) close(file)
c) end(file) 5. Comment supprimer un fichier en Python ?
d) fclose(file) a) delete_file("[Link]")
b) [Link]("[Link]")
3. Comment lire tout le contenu d'un fichier en une seule c) [Link]()
chaîne de caractères en Python ? d) d) remove("[Link]")
a) [Link]()
b) [Link](1)
c) [Link]()
21
d) [Link]()
Chapitre 1: Gestion des fichiers (La suite)

1. Comment ouvrir un fichier en mode lecture en Python ?


a) open("[Link]", "r")
b) open("[Link]", "w")
c) open("[Link]", "a")
d) open("[Link]", "rb") 4. Comment écrire une ligne dans un fichier en Python ?
a) [Link]("Nouvelle ligne")
2. Comment fermer un fichier après avoir terminé de le b) [Link]("Nouvelle ligne")
manipuler en Python ? c) file.add_line("Nouvelle ligne")
a) [Link]() d) file.write_line("Nouvelle ligne")
b) close(file)
c) end(file) 5. Comment supprimer un fichier en Python ?
d) fclose(file) a) delete_file("[Link]")
b) [Link]("[Link]")
3. Comment lire tout le contenu d'un fichier en une seule c) [Link]()
chaîne de caractères en Python ? d) remove("[Link]")
a) [Link]()
b) [Link](1)
c) [Link]()
22
d) [Link]()
TP

23
Chapitre 1: Gestion des fichiers (La suite)

Exercice 1 :

1. Écrivez un programme Python pour lire un fichier texte.

2. Écrivez un programme Python pour lire les trois premières lignes d'un fichier.

3. Écrivez un programme Python pour lire les deux dernières lignes d'un fichier.

4. Écrivez une fonction qui prend un fichier texte en entrée et renvoie le nombre de mots
d'un fichier texte donné.

24
Chapitre 1: Gestion des fichiers (La suite)

25
Chapitre 1: Gestion des fichiers (La suite)

26
Chapitre 1: Gestion des fichiers (La suite)

27
Chapitre 1: Gestion des fichiers (La suite)

4. Écrivez une fonction qui prend un fichier texte en entrée et renvoie le nombre de mots d'un
fichier texte donné.

28
Chapitre 1: Gestion des fichiers (La suite)
Exercice 2 :

Q1 :Écrire dans un fichier texte


Écrivez un programme Python qui demande à l'utilisateur d'entrer des
lignes de texte et enregistre ces lignes dans un fichier texte appelé
"[Link]". Le programme devrait se terminer lorsque l'utilisateur entre
une ligne vide.

29
Chapitre 1: Gestion des fichiers (La suite)
Exercice 2 :

Q2 : Lire à partir d'un fichier texte


Écrivez un programme Python qui lit le contenu de fichier texte appelé
« [Link] » et affiche son contenu à l'écran.

30
Chapitre 1: Gestion des fichiers (La suite)
Exercice 2 :

Q3 : Copie de fichier
Écrivez un programme Python qui copie le contenu d'un fichier source
« [Link] » vers un fichier de destination ("[Link]").

31
Chapitre 1: Gestion des fichiers (La suite)

Exercice 3 : Voir le document word

32
Chapitre 2: Programmation orientée
objet (POO)
 Qu’est-ce que la programmation orientée objet ?
 Concepts fondamentaux de POO (Classe, Objet, etc )
 Principe d’encapsulation, polymorphisme et héritage

33
Chapitre 2: Programmation orientée objet
Programmation impérative (procédural)

• Dans la programmation procédurale, le


code est organisé autour de procédures,
aussi appelées fonctions, qui effectuent
des opérations sur les données.
• Les données sont généralement
Œuf = donnée
structurées dans des types de données
simples comme des tableaux ou des
structures.
• Les procédures ou les fonctions
manipulent ces données en exécutant
des séquences d'instructions.
34
Chapitre 2: Programmation orientée objet

Programmation impérative (procédural)

Exemple de code en programmation procédurale en Python :

35
Chapitre 2: Programmation orientée objet
Programmation orientée objet (POO)

• Dans la programmation orientée objet, le


code est organisé autour d'objets qui
combinent données et fonctionnalités.
• Les objets sont des instances de classes, qui
sont des modèles pour créer des objets.
• Les données et les fonctions qui les
manipulent sont encapsulées ensemble à
l'intérieur de ces objets.

36
Chapitre 2: Programmation orientée objet
Programmation procédural vs programmation orientée objet

Principales caractéristiques Principales caractéristiques

 Basée sur des procédures ou des fonctions.  Basée sur des classes et des objets.

 Les données et les fonctions sont séparées.  Les données et les fonctions sont encapsulées
dans des objets.

 La modification des données peut être faite par  Les interactions entre les objets sont gérées
n'importe quelle fonction. par des méthodes.

 Utilise généralement des variables globales ou  Encourage la réutilisation du code et la


des arguments de fonction pour passer des modélisation du monde réel.
données.
37
Chapitre 2: Programmation orientée objet
Principe de la programmation orientée objet (POO)
Le principe de la programmation orientée objet (POO) repose sur plusieurs concepts fondamentaux qui
permettent d'organiser et de structurer le code de manière modulaire et réutilisable.
Les principaux concepts de la POO :
• Les classes : Elles sont des modèles ou des plans qui
définissent la structure et le comportement des objets. Elles
définissent les attributs (variables) et les méthodes (fonctions)
qui caractérisent les objets créés à partir de cette classe.

• Les objets : Ils sont des instances spécifiques d'une classe. Ils
contiennent des données (attributs) et des méthodes
(fonctions) pour manipuler ces données. Chaque objet peut
avoir des valeurs différentes pour ses attributs, mais partage
les mêmes méthodes définies dans sa classe.
38
Chapitre 2: Programmation orientée objet

Qu’est-ce que la programmation orientée objet?


• La programmation orientée objet (POO) correspond à une autre
manière d’imaginer, de construire et d’organiser son code.
• POO est un paradigme de programmation qui repose sur le concept
d'objets, des entités qui regroupent des données et les opérations
qui peuvent être effectuées sur ces données.

39
Chapitre 2: Programmation orientée objet
Concepts Fondamentaux de la POO en Python

1. Classes et Objets :
• Une classe est un modèle ou un plan qui définit les attributs
et les méthodes communs à un ensemble d'objets.
• Un objet est une instance d'une classe, avec des attributs
spécifiques et la capacité d'exécuter les méthodes définies
par sa classe.
2. Attributs et Méthodes :
• Les attributs sont des variables liées à un objet.
• Les méthodes sont des fonctions associées à une classe ou à
un objet. 44
Chapitre 2: Programmation orientée objet

Concepts Fondamentaux de la POO en Python

Classes :
• Une classe est écrite par un programmeur dans une structure définie pour créer un
objet dans le langage POO.
• Une classe définit des attributs et des méthodes.

Syntaxe de la création d’une classe :

41
Chapitre 2: Programmation orientée objet

Concepts Fondamentaux de la POO en Python

Attributs et méthodes d’une Classe :


• Une classe définit des attributs et des méthodes.

42
Chapitre 2: Programmation orientée objet

Concepts Fondamentaux de la POO en Python

Attributs d’une Classe :

• Exemple :

43
Chapitre 2: Programmation orientée objet
Concepts Fondamentaux de la POO en Python

Instances d’objets
• Un objet est une « instance » d'une classe.
• Une classe est un modèle pour les objets .

44
Chapitre 2: Programmation orientée objet
Concepts Fondamentaux de la POO en Python

Méthode « init » d’une Classe :


• La méthode init (self) permet d’initialiser les attributs d’objets d’une classe.
• La méthode init (self) est appelée lors de la création d'un objet.
• On l’appel constructeur.

45
Chapitre 2: Programmation orientée objet
Concepts Fondamentaux de la POO en Python
Mot-clef « self » :
• Le mot-clef « self » désigne l’objet lui-même.
• Lorsqu’on définit [Link] , on définit un attribut d’objets d’une classe.
Exemple:
• [Link] est une manière de stocker l’information de marque dans la classe voiture.
 On dit marque est un attribut de classe voiture.

46
Chapitre 2: Programmation orientée objet
Concepts Fondamentaux de la POO en Python

Récapitulatif de la
syntaxe :

47
Chapitre 2: Programmation orientée objet
Concepts Fondamentaux de la POO en Python

Un autre exemple

48
Chapitre 2: Programmation orientée objet
Méthodes de classe
 Accéder aux attributs de classe :

 Accéder aux attributs des instances :

Résultat de l’exécution de ce code

49
Chapitre 2: Programmation orientée objet
Méthodes de classe

50
Chapitre 2: Programmation orientée objet

Avantages de la POO en Python

 Modularité : Les classes permettent de regrouper le code en modules réutilisables.


 Réutilisabilité : Les classes peuvent être utilisées comme modèles pour créer de nouveaux
objets, favorisant ainsi la réutilisation du code.
 Maintenabilité : Les changements dans une classe n'affectent généralement pas le reste
du programme, ce qui simplifie la maintenance.
 Compréhension : La POO rend le code plus lisible et compréhensible, en alignant le code
sur le monde réel.

51
Chapitre 2: Programmation orientée objet

Concepts fondamentaux de POO

• Python supporte trois concepts fondamentaux de la programmation


orientée objet (POO) :
 Encapsulation
 Héritage
 Polymorphisme

52
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO
Encapsulation :
• L'encapsulation fait référence à la notion
de regrouper des données et des
méthodes qui agissent sur ces données
dans une seule entité, souvent appelée
classe en POO.
• En Python, l'encapsulation est réalisée
en déclarant des classes et en
définissant des méthodes et des
attributs à l'intérieur de ces classes.
53
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO

Héritage :
• Le principe de l'héritage est un concept fondamental de la programmation
orientée objet (POO) qui est largement utilisé dans Python et d'autres langages
de programmation.
• L'héritage est un moyen de créer une nouvelle classe en utilisant les détails d'une
classe existante sans la modifier.

54
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO

Héritage :
• Il permet à une classe d'hériter des attributs et des
méthodes d'une autre classe . Cela permet la Syntaxe :
réutilisation du code et favorise la création de
hiérarchies de classes.
• La classe nouvellement formée est une classe
dérivée (ou sous-classes ou classe enfant).
• De même, la classe existante est une classe de base
(ou superclasse ou classe parente).
55
Chapitre 2: Programmation orientée objet
concept d'héritage en programmation orientée objet
• Une classe enfant hérite des attributs et des méthodes de sa
classe parente, mais elle peut également avoir ses propres
attributs et méthodes uniques.
• Cela signifie que la classe enfant bénéficie de toutes les
fonctionnalités de sa classe parente, mais elle peut également
étendre ou modifier ces fonctionnalités pour répondre à ses
besoins spécifiques.

Exemple:
• considérons une classe de base Animal avec une
méthode manger() qui indique que tous les animaux
mangent. Une sous-classe Chien pourrait hériter de cette
méthode manger(), mais elle pourrait également avoir sa
propre méthode aboyer() qui est spécifique aux chiens.
60
Chapitre 2: Programmation orientée objet

Exemple de principe d’héritage :

61
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO

Types d’héritage :
• Héritage simple
• Héritage multiple
• Héritage hiérarchique

58
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO

Héritage simple:
• Dans l'héritage simple, une classe hérite uniquement d'une seule classe de base. Toutes les méthodes
et attributs de la classe de base sont accessibles à la classe dérivée.

59
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO

Exemple d’héritage simple :

60
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO

Héritage multiple:
• Python prend en charge l'héritage multiple, ce qui signifie qu'une classe peut hériter de plusieurs
classes de base. Cependant, cela peut introduire des ambiguïtés si deux classes de base ont des
méthodes ou des attributs du même nom.

61
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO

Héritage hiérarchique:
• Dans l'héritage hiérarchique, une classe de base a plusieurs classes dérivées. Cela signifie qu'une classe
peut être héritée par une ou plusieurs autres classes, créant ainsi une hiérarchie de classes.

62
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO
Exemple d’héritage hiérarchique
:

63
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO

Polymorphisme :
• Le polymorphisme se réfère à la capacité
d'objets de différentes classes de répondre de
manière uniforme à un même message ou à
une même méthode.
• En Python, le polymorphisme est souvent
implémenté en utilisant l'héritage.

64
Chapitre 2: Programmation orientée objet
Concepts fondamentaux de POO
Polymorphisme
• Dans cet exemple, les classes Chien et Chat héritent de la
classe de base Animal.
• Elles redéfinissent la méthode parler() avec leur propre
comportement spécifique. Lorsque nous créons des instances
de Chien et de Chat, puis appelons la méthode parler() sur
chacune d'elles, Python utilise le polymorphisme pour
exécuter la méthode appropriée en fonction du type réel de
l'objet.
• Ainsi, bien que nous appelions la même méthode parler(),
Python exécute l'implémentation spécifique à chaque classe,
illustrant ainsi le polymorphisme.
65
Chapitre 2: Programmation orientée objet

Quiz

66
Chapitre 2: Programmation orientée objet

1: Qu'est-ce qu'une classe en programmation orientée objet (POO) en Python?


a) Un morceau de code réutilisable.
b) Une fonction.
c) Un modèle ou un plan pour créer des objets.
d) Un conteneur de données.

2:Comment définissez-vous un constructeur dans une classe Python?


a) def init(self):`
b) def init (self):
c) def constructor(self):
d) def constructor (self):

3:Quelle est la principale différence entre une classe et un objet en POO?


a) Une classe est un objet particulier.
b) Une classe est une instance d'un objet.
c) Une classe est un modèle, et un objet est une instance de ce modèle.
d) Il n'y a pas de différence significative.
67
Chapitre 2: Programmation orientée objet

4:Comment appelle-t-on le mécanisme permettant à une classe d'hériter des propriétés et des
méthodes d'une autre classe en Python?
a) Encapsulation.
b) Polymorphisme.
c) Héritage.
d) Abstraction.

5:Qu'est-ce que le polymorphisme en programmation orientée objet?


a) La capacité d'une classe à hériter des propriétés d'une autre classe.
b) La capacité d'un objet à prendre plusieurs formes.
c) L'encapsulation des données.
d) La réutilisation du code.

68
Chapitre 2: Programmation orientée objet
Correction du Quiz

1: Qu'est-ce qu'une classe en programmation orientée objet (POO) en Python?


a) Un morceau de code réutilisable.
b) Une fonction.
c) Un modèle ou un plan pour créer des objets.
d) Un conteneur de données.

2:Comment définissez-vous un constructeur dans une classe Python?


a) def init(self):`
b) def init (self):
c) def constructor(self):
d) def constructor (self):

3:Quelle est la principale différence entre une classe et un objet en POO?


a) Une classe est un objet particulier.
b) Une classe est une instance d'un objet.
c) Une classe est un modèle, et un objet est une instance de ce modèle.
d) Il n'y a pas de différence significative.
69
Chapitre 2: Programmation orientée objet
Correction du Quiz

4:Comment appelle-t-on le mécanisme permettant à une classe d'hériter des propriétés et des
méthodes d'une autre classe en Python?
a) Encapsulation.
b) Polymorphisme.
c) Héritage.
d) Abstraction.

5:Qu'est-ce que le polymorphisme en programmation orientée objet?


a) La capacité d'une classe à hériter des propriétés d'une autre classe.
b) La capacité d'un objet à prendre plusieurs formes.
c) L'encapsulation des données.
d) La réutilisation du code.

70
Chapitre 2: Programmation orientée objet

TP

71
Chapitre 2: Programmation orientée objet

Exercice 1 :

Écrivez une classe Python nommée « Point3D » définie par x, y et z. Définissez


une méthode qui renvoie (x, y ,z). Cela indique à Python de représenter cet
objet au format suivant : (x, y, z).

Créez ensuite une variable nommée my_point contenant une nouvelle instance
de Point3D avec x=4, y=3 et z=1 et affichez-la.

72
Chapitre 2: Programmation orientée objet

73
Chapitre 2: Programmation orientée objet

Exercice 2 :
Écrivez une classe Python nommée Rectangle construite par une longueur et une
largeur. Définissez deux méthodes, surface et périmètre, qui calculeront la surface et
le périmètre du rectangle.

Créez ensuite une variable nommée my_rectangle contenant une nouvelle instance de
Rectangle avec largeur = 5 et longueur = 6 et calculez à la fois la surface et le
périmètre.

La formule de calcul : la surface devrait être 5 * 6 = 30 et le périmètre 2 * (5 + 6) = 22 .


74
Chapitre 2: Programmation orientée objet

75
Chapitre 2: Programmation orientée objet

Exercice 3 :
Supposons que nous voulions modéliser un compte bancaire avec prise en
charge des opérations de dépôt et de retrait.

Créons une classe Python nommée Compte_Bank définie par son solde.
Définissez deux méthodes, dépôt et retrait, pour calculer le nouveau
montant de chaque opération.

76
Chapitre 2: Programmation orientée objet

77
Chapitre 2: Programmation orientée objet
Exercice 4 :
1) Créez une classe appelée Voiture qui a les attributs suivants:

• marque
• modèle
• vitesse
• moteur (essence ou diesel)
2) Ajoutez un constructeur à la classe Voiture qui initialise les attributs ci-dessus lorsque l'on crée
un nouvel objet de la classe.

3) Ajoutez une méthode à la classe Voiture appelée accélérer qui augmente la vitesse de 10 km/h
à chaque fois que cette méthode est appelée.

4) Ajoutez une méthode à la classe Voiture appelée afficher_vitesse qui affiche la vitesse actuelle
de la voiture.

5) Créez un objet de la classe Voiture et utilisez les méthodes accélérer et afficher_vitesse pour
vérifier que tout fonctionne correctement. 82
Chapitre 2: Programmation orientée objet

79
Chapitre 2: Programmation orientée objet

Exercice 5 :

1. Définir une classe Book avec les attributs suivants : Title, Author (Nom complet), Price.
2. Définir un constructeur ayant comme attributs: Title, Author, Price.
3. Définir la méthode View() pour afficher les informations d'une instance object Book.
4. Ecrire un programme pour tester la classe Book.

80
Chapitre 2: Programmation orientée objet

81
Chapitre 2: Programmation orientée objet

Exercice 6:

1. Définir une classe Cercle permettant de créer un cercle C(O,r) de centre O(a,b) et de rayon r à
l'aide du constructeur .
2. Définir une méthode Surface() de la classe qui permet de calculer la surface du cercle.
3. Définir une méthode Perimetre() de la classe qui permet de calculer le périmètre du cercle.
4. Définir une méthode testAppartenance() de la classe qui permet de tester si un point A(x,y)
appartient ou non au cercle C(O,r).

82
Chapitre 2: Programmation orientée objet

83
Chapitre 2: Programmation orientée objet
Révision globale
Exercice 7 :

1. Créer une classe Python nommée CompteBancaire qui représente un compte bancaire, ayant pour
attributs : numeroCompte (type numérique ) , nom (nom du propriétaire du compte du type
chaine), solde.

2. Créer un constructeur ayant comme paramètres : numeroCompte, nom, solde.

3. Créer une méthode Versement() qui gère les versements.

4. Créer une méthode Retrait() qui gère les retraits.

5. Créer une méthode Agios() permettant d'appliquer les agios à un pourcentage de 5 % du solde

6. Créer une méthode afficher() permettant d’afficher les détails sur le compte

7. Donner le code complet de la classe CompteBancaire.

84
Chapitre 2: Programmation orientée objet

85
Chapitre 2: Programmation orientée objet

Exercice 9: Héritage
Créez une classe de base Employe avec les attributs nom et salaire. Ensuite, créez
deux sous-classes Manager et Ouvrier qui héritent de la classe Employe. La classe
Manager devrait également avoir un attribut prime et la classe Ouvrier devrait
également avoir un attribut heures_travail.

86
Chapitre 2: Programmation orientée objet

87
Chapitre 2: Programmation orientée objet

Exercice 10 : Héritage

Définir deux classes : Animal et Bird.

1. Spécifier la relation entre ces deux classes.


2. Définir les attributs et les méthodes de la classe Animal :
 Attributs: name, age
 Méthodes: Eat, Sleep
3. Définir les attributs et les méthodes de la classe Bird :
 Attributs: type, color
 Méthodes: Fly, Sing
4. Afficher les informations (Attributs et méthodes) de la classe Bird.
5. Afficher les résultats des méthodes Eat et Sleep par l’instance de la classe Bird.
6. Appeler la fonction super() dans la classe Bird.
88
Chapitre 2: Programmation orientée objet

89
Chapitre 2: Programmation orientée objet

Exercice 11:
1. Définissez une classe Vehicule avec les attributs marque et couleur. Cette classe doit également avoir
une méthode deplacer() qui retourne la chaîne de caractères "Le véhicule se déplace ’’.
2. Créez deux sous-classes de Voiture et Velo. La classe `Voiture` doit avoir un attribut supplémentaire
`vitesse`, tandis que la classe Velo doit avoir un attribut supplémentaire type_velo.
3. Redéfinissez la méthode deplacer() dans chaque sous-classe pour qu'elle renvoie une chaîne de
caractères décrivant le déplacement spécifique du véhicule. Pour la classe Voiture, la méthode doit
inclure la vitesse, tandis que pour la classe Velo, elle doit mentionner le type de vélo.
4. Créez des instances d'une voiture et d'un vélo, en leur passant des valeurs pour tous les attributs
nécessaires.
5. Affichez le résultat de l'appel à la méthode deplacer() pour chaque instance.

90
Chapitre 2: Programmation orientée objet

91
Chapitre 3: Bibliothèque Numpy
 Qu’est-ce que la Bibliothèque Numpy?
 Installation et importation de Numpy
 Utilité de l’utilisation de Numpy
 Fonctions de la bibliothèque Numpy
 Manipulation des tableaux Numpy (Array)

92
Chapitre 3: Bibliothèque Numpy

Qu’est-ce que Numpy ?


Définition
• Il s'agit d'une bibliothèque Python fournit un objet tableau multidimensionnel,
divers objets dérivés tels que des tableaux et des matrices.
• Il a également des fonctions pour travailler dans le domaine de l'algèbre linéaire
et des matrices.
• Il permet d’appliquer des opérations rapides sur des tableaux, y compris
mathématiques, logiques, manipulation de forme, tri, sélection, opérations
statistiques de base, simulation aléatoire etc..

93
Chapitre 3: Bibliothèque Numpy

Pourquoi utiliser Numpy ?

• En Python, nous avons des listes qui servent à des tableaux, mais elles sont lentes
à traiter.
• NumPy vise à fournir un objet tableau jusqu'à 50 fois plus rapide que les listes
Python traditionnelles.
• L'objet tableau dans NumPy s'appelle ndarray, il fournit de nombreuses fonctions
de support qui facilitent le travail ndarray.
• Les tableaux sont très fréquemment utilisés en science des données, où la vitesse
et les ressources sont très importantes.
94
Chapitre 3: Bibliothèque Numpy

Installation et Importation de Numpy

• Avant de commencer avec NumPy, nous devons importer le package spécifique

souvent désigné par np.

Remarque !
• Parfois, vous trouverez après l’importation
d’une bibliothèque; ce message d’erreur ce
qui signifie que la bibliothèque n’est pas
installée dans jupyter.
95
Chapitre 3: Bibliothèque Numpy
Installation et Importation de Numpy

Solution :
• Dans ce cas vous devez d’abord installer la bibliothèque à l’aide de la
ligne de commande suivante dans jupyter : !pip install numpy

• Ou dans la l’invite de commande anaconda : pip install numpy

96
Chapitre 3: Bibliothèque Numpy

Création du tableau Numpy (Array)

• Avant de commencer avec NumPy, nous devons importer le package spécifique

souvent désigné par np.

 Définir un Tableau unidimensionnel

1 2 3

 Définir un Tableau multidimensionnel

1 2 3
4 5 6
97
Chapitre 3: Bibliothèque Numpy

Array (Shape / reashape)

 Array Shape (forme):

• La forme d'un tableau est le nombre d'éléments dans chaque dimension.


• Pour obtenir la forme actuelle d'un tableau, nous utilisons la fonction shape,
elle renvoie un tuple.

98
Chapitre 3: Bibliothèque Numpy
Array (Shape / reashape)

 Array Reshape:

• Créer un tableau unidimensionnel

• Ensuite, pour remodeler le tableau dans n'importe quelle dimension. Nous

utilisons la méthode NumPy : reshape.

 b est maintenant un tableau à deux dimensions avec 2 lignes et 4 colonnes.


99
Chapitre 3: Bibliothèque Numpy
Array (Shape / reshape)

Exercice 1:
Écrivez un programme Python qui crée un tableau (array) de dimensions 2x3 et utilise les
méthodes shape et reshape de la bibliothèque NumPy pour afficher les dimensions
d'origine, puis remodeler ce tableau en un tableau de dimensions 3x2 et afficher à
nouveau ses dimensions.

100
Chapitre 3: Bibliothèque Numpy
Array (Shape / reashape)

101
Chapitre 3: Bibliothèque Numpy

Indexation de tableau Numpy (Array)

• Après la création de notre tableau a, voici comment notre tableau est stocké.

• N'oubliez pas que les tableaux en Python commencent toujours par 0.

• Pour obtenir la valeur 2, on doit accéder à la première ligne (indice 0) et la


troisième colonne (indice 2).

102
Chapitre 3: Bibliothèque Numpy

Sélection de ligne et de colonne (Array slicing)

 Sélection de ligne:

• Supposons qu’on a le tableau suivant:


• Pour obtenir juste la deuxième ligne, on écrit le code suivant:

 Sélection de colonne:

• Pour obtenir la dernière colonne, on écrit les instructions suivantes:

103
Chapitre 3: Bibliothèque Numpy

Fonction « Random () »

• NumPy fournit également de nombreuses fonctions pour créer des tableaux.

• La fonction [Link]() renvoie des entiers aléatoires entre 0 et 1 .

• Nous pouvons également créer des tableaux contenant des valeurs aléatoires
comprises entre 0 et 1 en spécifiant la forme du tableau :

104
Chapitre 3: Bibliothèque Numpy

Fonction « Randint »

• Avec la fonction [Link](), nous créons un tableau contenant des entiers


aléatoires entre une valeur minimale et une valeur maximale avec une forme
spécifiée.

105
Chapitre 3: Bibliothèque Numpy

Fontion « full () »

• La fonction full () renvoie un nouveau tableau d'une forme et d'un type


donné rempli avec la valeur qu’on a choisi.

106
Chapitre 3: Bibliothèque Numpy

Fonction « zeros () »

• La fonction zeros () renvoie un nouveau tableau d'une forme et d'un


type donné rempli de zéros.

107
Chapitre 3: Bibliothèque Numpy

Fonction « eye () »

• La fonction eye () renvoie un tableau 2D avec des uns sur la


diagonale et des zéros ailleurs.

• En mathématique, on appelle matrice identité d’ordre n.

108
Chapitre 3: Bibliothèque Numpy

Fonction « ones () »

• La fonction ones () renvoie un nouveau tableau de la forme et du


type donné rempli de uns.

109
Chapitre 3: Bibliothèque Numpy
Fonction « arange() »

Syntaxe (Voir l’exercice 1 ) :


numpy. arange ( start , stop , step )
Définition :
• Renvoie des valeurs régulièrement espacées dans un intervalle donné.
• Arange peut être appelé avec un nombre variable d'arguments positionnels :
🠶 arange(stop): Les valeurs sont générées dans l'intervalle semi-ouvert (en d'autres termes, l'intervalle incluant start mais
excluant stop ).[0, stop)

🠶 arange(start, stop): Les valeurs sont générées dans l'intervalle semi-ouvert .[start, stop)
🠶 arange(start, stop, step) : Les valeurs sont générées dans l'intervalle semi-ouvert , avec un espacement entre les valeurs
donné par .[start, stop, step)

• Cette fonction est à peu près équivalente à la fonction Python intégrée range, mais renvoie un ndarray plutôt
qu'une range instance. 114
Chapitre 3: Bibliothèque Numpy

Fonction « tolist() »

Syntaxe :

ndarray. tolist ( )
'Ndarray' est l'objet qui détient le tableau que nous voulons convertir en liste.

Définition :
• Renvoie une copie des données du tableau sous forme de liste Python (liste imbriquer).

111
Chapitre 3: Bibliothèque Numpy

Fonction « trace() »

Syntaxe :
numpy. trace ( a )
'a' représente une variable contenant le tableau 'array’.
Définition :
• Retourne la somme des valeurs situées sur la diagonale du tableau.

112
Chapitre 3: Bibliothèque Numpy

Fonction « diagonal() »

Syntaxe :
ndarray. diagonal ()
Définition :
• Retourne les éléments situés sur la diagonale d'un tableau.

113
Chapitre 3: Bibliothèque Numpy

Fonction « astype() »

Syntaxe :
ndarray. astype ( type )
Le type doit être l'un des suivants : ‘bool’, ‘float’, ‘int’ ou ‘str’.
Définition :
• Cette fonction permet de retourner une copie du tableau, convertie
en un type spécifié.

114
Chapitre 3: Bibliothèque Numpy

Autres fonctions

 Addition:

• La fonction add () retourne la somme de deux tableaux.

Exemple :

115
Chapitre 3: Bibliothèque Numpy

Autres fonctions

 Soustraction:

• La fonction subtract () renvoie la différence entre deux tableaux


NumPy.

Exemple :

116
Chapitre 3: Bibliothèque Numpy

Autres fonctions

 Multiplication:

117
Chapitre 3: Bibliothèque Numpy

Autres fonctions

Division:

a = [Link]([[1,2,3], [4,5,6]])
b = 2/a
print(b)

118
Chapitre 3: Bibliothèque Numpy

Documentation de la bibliothèque Numpy

• Pour plus d’informations et pour voir toutes les fonctions de la


bibliothèques Numpy, visitez sa Documentation.

• Le lien de la documentation de Numpy :

[Link]

119
Chapitre 3: Bibliothèque Numpy

Quiz

120
Chapitre 3: Bibliothèque Numpy

1. Quel est le principal objectif de la bibliothèque NumPy en Python?


a) Gestion des fichiers CSV.
b) Traitement d'images.
c) Manipulation des tableaux et des opérations mathématiques.
d) Création d'interfaces graphiques.

2. Quelle est la structure de base de données de NumPy pour stocker des données numériques?
a) DataFrames.
b) Arrays.
c) Series.
d) Lists.

121
Chapitre 3: Bibliothèque Numpy

3. Comment créez-vous un tableau (array) NumPy en utilisant une liste Python existante?
a) [Link](liste)
b) numpy.array_from_list(liste)
c) numpy.create_array(liste)
d) numpy.list_to_array(liste)

4. Quelle fonction NumPy est utilisée pour générer une séquence de nombres espacés régulièrement?
a)[Link]()
b) [Link]()
c) [Link]()
d) [Link]()

122
Chapitre 3: Bibliothèque Numpy

5. Quelle fonction NumPy est utilisée pour effectuer des opérations mathématiques élémentaires sur
chaque élément d'un tableau?
a) [Link]()
b) [Link]()
c) numpy.apply_math()
d) Aucune de ces réponses.

6. Comment faites-vous une opération de somme sur tous les éléments d'un tableau NumPy?
a) [Link](array)
b) [Link]()
c) sum(numpy, array)
d) [Link]()

123
Chapitre 3: Bibliothèque Numpy
Correction du Quiz

[Link] est le principal objectif de la bibliothèque NumPy en Python?


a) Gestion des fichiers CSV.
b) Traitement d'images.
c) Manipulation des tableaux et des opérations mathématiques.
d) Création d'interfaces graphiques.

[Link] est la structure de base de données de NumPy pour stocker des données numériques?
a) DataFrames.
b) Arrays.
c) Series.
d) Lists.

124
Chapitre 3: Bibliothèque Numpy
Correction du Quiz

[Link] créez-vous un tableau (array) NumPy en utilisant une liste Python existante?
a) [Link](liste)
b) numpy.array_from_list(liste)
c) numpy.create_array(liste)
d) numpy.list_to_array(liste)

[Link] fonction NumPy est utilisée pour générer une séquence de nombres espacés régulièrement?
a)[Link]()
b) [Link]()
c) [Link]()
d) [Link]()

125
Chapitre 3: Bibliothèque Numpy
Correction du Quiz

[Link] fonction NumPy est utilisée pour effectuer des opérations mathématiques élémentaires sur
chaque élément d'un tableau?
a) [Link]()
b) [Link]()
c) numpy.apply_math()
d) Aucune de ces réponses.

[Link] faites-vous une opération de somme sur tous les éléments d'un tableau NumPy?
a) [Link](array)
b) [Link]()
c) sum(numpy, array)
d) [Link]()

126
Chapitre 3: Bibliothèque Numpy

TP

127
Chapitre 3: Bibliothèque Numpy

Exercice 1 :

A l'aide de la bibliothèque numpy, écrire un programme qui permet de créer


une matrice du type 3x3 formée des entiers 1 , 2 , 3 , ... , 9.

128
Chapitre 3: Bibliothèque Numpy

129
Chapitre 3: Bibliothèque Numpy

Exercice 2:

Écrivez un programme Python pour convertir un tableau en une liste ordinaire avec
les mêmes éléments.

130
Chapitre 3: Bibliothèque Numpy

131
Chapitre 3: Bibliothèque Numpy

Exercice 3 :

Écrivez un programme NumPy pour calculer la somme des éléments diagonaux


d'un tableau donné. Il existe deux méthodes possibles pour résoudre ce problème :

1. Utilisez la fonction prédéfinis.

2. Manuellement (sans fonction prédéfinis).

132
Chapitre 3: Bibliothèque Numpy

133
Chapitre 3: Bibliothèque Numpy

134
Chapitre 3: Bibliothèque Numpy

Exercice 4 :

Donné un tableau de votre choix, obtenez toutes les valeurs supérieures à X.


Exemple : a = [[4,2],[1,6]] et x = 3 : alors 4 et 6 sont supérieurs à 3.

135
Chapitre 3: Bibliothèque Numpy

136
Chapitre 3: Bibliothèque Numpy

Exercice 5 :

Ecrire un programme python numpy qui convertit une matrice numpy


binaire (contenant uniquement des 0 et des 1) en une matrice
numpy booléene (c.a.d les '1' seront remplacés par True et les '0' par False).

137
Chapitre 3: Bibliothèque Numpy

138
Chapitre 3: Bibliothèque Numpy

Exercice 6 :

Ecrire un programme python-numpy permettant de remplacer les éléments


diagonaux d'une matrice numpy par des 'zéros'.

139
Chapitre 3: Bibliothèque Numpy

140
Chapitre 4: Bibliothèque Pandas
 Qu’est-ce que la Bibliothèque Pandas?
 Installation et importation de Pandas
 Types de structures de données de Pandas (Séries et DataFrame)
 Fonctions de la bibliothèque Pandas

141
Chapitre 4: Bibliothèque Pandas

Qu’est-ce que Pandas ?

Définition :
• Pandas est spécifiquement conçue pour la manipulation et l’analyse de données en
langage Python.
• Elle est à la fois performante, flexible et simple d’utilisation.
• Il a des fonctions d'analyse, de nettoyage, d'exploration et de manipulation des
données.
• Le nom "Pandas" fait référence à la fois à "Panel Data" et à "Python Data Analysis" .

142
Chapitre 4: Bibliothèque Pandas
Pourquoi utiliser Pandas ?

• Elle fournit une structure de donnée appelée Dataframe rapide et


efficace pour la manipulation des données avec indexation
intégrée ;
• Elle dispose d’outils pour lire et écrire dans des fichiers de
différents formats (.csv, .txt, .xlsx, .sql, .hdf5, etc…) .

143
Chapitre 4: Bibliothèque Pandas
Avantages de Pandas

1. Elle nous permet d'analyser les mégadonnées et de tirer des conclusions basées
sur des théories statistiques.
2. Les fonctions de Pandas peuvent nettoyer des ensembles de données
désordonnés et les rendre lisibles et pertinents.
3. Elle est utilisée dans une grande variété de domaines universitaires et
commerciaux, notamment la finance, les neurosciences, l’économie, les
statistiques, la publicité, l’analyse Web.
144
Chapitre 4: Bibliothèque Pandas
Que peuvent faire les Pandas ?

• Pandas vous donne des réponses sur les données. Comme:


• Existe-t-il une corrélation entre deux colonnes ou plus ?
• Qu'est-ce que la valeur moyenne ?
• Valeur max?
• Valeur mini ?
• Les pandas sont également capables de supprimer les lignes qui ne sont pas
pertinentes ou qui contiennent des valeurs erronées, comme des valeurs vides
ou NULL. C'est ce qu'on appelle nettoyer les données.
145
Chapitre 4: Bibliothèque Pandas

Installation et Importation de Pandas

• Avant de commencer avec Pandas, nous devons importer le package spécifique

souvent désigné par pd.

Remarque !
• Parfois, vous trouverez après l’importation
d’une bibliothèque; ce message d’erreur ce
qui signifie que la bibliothèque n’est pas
installée dans jupyter.
146
Chapitre 4: Bibliothèque Pandas
Installation et Importation de Pandas

Solution :
• Dans ce cas vous devez d’abord installer la bibliothèque à l’aide de la
ligne de commande suivante dans jupyter : !pip install pandas

• Ou dans la l’invite de commande anaconda : pip install pandas

147
Chapitre 4: Bibliothèque Pandas

Structures de données de Pandas

Les deux structures de données principales de Pandas sont :


1. Série
2. DataFrame

148
Chapitre 4: Bibliothèque Pandas

Structures de données de Pandas

Les deux structures de données principales de Pandas sont :

1. Série
2. DataFrame

149
Chapitre 4: Bibliothèque Pandas

Qu’est-ce qu’une Série ?

• Une série Pandas est comme une colonne dans un tableau.


• C'est un tableau unidimensionnel contenant des données de
tout type.

150
Chapitre 4: Bibliothèque Pandas
Comment créer une Série ?
Une série peut être créée de trois manières :
1. Un tableau NumPy :

2. Une liste:

151
Chapitre 4: Bibliothèque Pandas
Comment créer une Série ?

3. Objets clé/valeur en série


• Vous pouvez également utiliser un objet clé/valeur, comme un
dictionnaire, lors de la création d'une série.

152
Chapitre 4: Bibliothèque Pandas
Index de changement de Série
• Nous pouvons personnaliser notre code en créant une série à l'aide de nos
propres index.

Exemple:
• Pour sélectionner uniquement certains éléments du dictionnaire, utilisez
l' index argument et spécifiez uniquement les éléments que vous souhaitez
inclure dans la série.

153
Chapitre 4: Bibliothèque Pandas

Ajout de Série

• En additionnant deux séries avec le même indice, on obtient une nouvelle


série où les valeurs correspondantes seront additionnées :

154
Chapitre 4: Bibliothèque Pandas

Structures de données de Pandas

Les deux structures de données principales de Pandas sont :


1. Série

2. DataFrame

155
Chapitre 4: Bibliothèque Pandas

TP

156
Chapitre 4: Bibliothèque Pandas

Manipulation des Séries

157
Chapitre 4: Bibliothèque Pandas

Ex1 :

Écrivez un programme Pandas pour créer et afficher un objet semblable à un


tableau unidimensionnel contenant un tableau de données.

158
Chapitre 4: Bibliothèque Pandas

159
Chapitre 4: Bibliothèque Pandas

Ex2 :

Écrivez un programme Pandas pour convertir une série de module Pandas en liste
Python et afficher son type.

160
Chapitre 4: Bibliothèque Pandas

161
Chapitre 4: Bibliothèque Pandas

Ex3 :

Écrivez un programme Pandas pour additionner, soustraire, multiplier et diviser


deux séries Pandas.

Exemple : [2, 4, 6, 8, 10], [1, 3, 5, 7, 9]

162
Chapitre 4: Bibliothèque Pandas

163
Chapitre 4: Bibliothèque Pandas

Ex 4 :

Écrivez un programme Pandas pour convertir un


dictionnaire en série Pandas.

Exemple de dictionnaire : d1 = {'a' : 100, 'b' : 200, 'c' : 300,


'd' : 400, 'e' : 800}

164
Chapitre 4: Bibliothèque Pandas

165
Chapitre 4: Bibliothèque Pandas

Ex 5 :

Ecrire un programme Pandas pour changer l'ordre des


index d'une série donnée.

166
Chapitre 4: Bibliothèque Pandas

167
Chapitre 4: Bibliothèque Pandas

Structures de données de Pandas

Les deux structures de données principales de Pandas sont :


1. Série

2. DataFrame

168
Chapitre 4: Bibliothèque Pandas

Qu’est-ce qu’un DataFrame ?

Définition :
• Les ensembles de données dans Pandas sont généralement des tables multidimensionnelles, appelées
DataFrames.
• La série est comme une colonne, un DataFrame est la table entière.
• Un Pandas DataFrame est une structure de données à 2 dimensions, comme un tableau à 2 dimensions
ou un tableau avec des lignes et des colonnes.

169
Chapitre 4: Bibliothèque Pandas

Comment créer un DataFrame ?

1. A partir d'une liste :

2. D'un dictionnaire :

170
Chapitre 4: Bibliothèque Pandas
Comment créer un DataFrame ?

3. Depuis un tableau NumPy :

4. A partir d'un fichier CSV :

171
Chapitre 4: Bibliothèque Pandas

Qu’est-cequ’un
fichierCSV?

172
Chapitre 4: Bibliothèque Pandas
Qu’est-ce qu’un fichier CSV ?

Définition :
• Un moyen simple de stocker de grands
ensembles de données consiste à utiliser des
fichiers CSV (fichiers séparés par des
virgules).
• Les fichiers CSV contiennent du texte brut et
sont un format bien connu qui peut être lu
par tout le monde, y compris Pandas.

173
Chapitre 4: Bibliothèque Pandas
Exportation de DataFrame vers un fichier CSV

 Etapes à suivre:
1. Nous créons un DataFrame à l'aide d'un dictionnaire.
2. Nous le téléchargeons dans un fichier CSV.
3. Nous créons un nouveau DataFrame à partir de notre fichier CSV.
4. Nous avons utilisé la méthode head() pour afficher les 5 premières lignes.

174
Chapitre 4: Bibliothèque Pandas

Obtenir des informations sur un DataFrame

Notre dataFrame (df) = • Pour afficher les informations • Pour savoir une description
générales des différentes colonnes, des données: [Link]()
comme le type, on écrit : [Link]()

175
Chapitre 4: Bibliothèque Pandas
Obtenir des informations sur un DataFrame

• Pour afficher des données:


Notre dataFrame (df) = [Link]() #to show the first 5 rows of our data

[Link]() #to show the last 5 rows of our data

176
Chapitre 4: Bibliothèque Pandas
Obtenir des informations sur DataFrame

• Pour Sélectionner multiple ligne et multiple colonne, on utilise l'une des


façons les plus simples de le faire est d'utiliser des crochets (la méthode de
découpage en tranche).
 Sélection multiple ligne:
Résultat

 Sélection multiple colonne:


Résultat

177
Chapitre 4: Bibliothèque Pandas
Obtenir des informations sur DataFrame

Changer / Remplacer l’index :


Définition :
• Nous pouvons utiliser la fonction set_index() si nous voulons remplacer l'index
en utilisant une ou plusieurs colonnes existantes.
• Ancien index • Nouvel index

178
Chapitre 4: Bibliothèque Pandas
Obtenir des informations sur DataFrame

Méthode loc () :
• Cette méthode est utilisée pour accéder aux données en utilisant des libellés d'index. Cela signifie
que vous pouvez accéder aux lignes ou aux colonnes en utilisant les noms des index.

Exemple 1 :

Résultat

df =
179
Chapitre 4: Bibliothèque Pandas
Obtenir des informations sur DataFrame

Méthode loc () :
• Cette méthode est utilisée pour accéder aux données en utilisant des libellés d'index. Cela signifie
que vous pouvez accéder aux lignes ou aux colonnes en utilisant les noms des index.
Exemple 2 :

Résultat

df = 180
Chapitre 4: Bibliothèque Pandas
Obtenir des informations sur DataFrame

Méthode iloc () :
• Cette méthode est utilisée pour accéder aux données en utilisant des positions d'index entières (c'est-
à-dire des positions numériques plutôt que des libellés).
• Cela signifie que vous pouvez accéder aux lignes ou aux colonnes en utilisant les indices numériques
basés sur la position.

Exemple :

Résultat

df = 181
Chapitre 4: Bibliothèque Pandas
Méthodes loc () vs iloc ()

• En résumé, la principale différence entre loc[] et iloc[] réside dans la manière dont
elles accèdent aux données :
• loc[] utilise des libellés d'index (noms d'index ou de colonne), tandis que
• iloc[] utilise des positions d'index numériques (indices).

182
Chapitre 4: Bibliothèque Pandas

Suppression des données


Méthode drop () :
• Pour supprimer des étiquettes spécifiées à partir de lignes ou de colonnes, nous utilisons simplement
la méthode drop().
• Le paramètre "axis" est utilisé pour spécifier l'axe selon lequel une opération doit être effectuée. Cela
permet de contrôler si une opération doit être appliquée sur les lignes (axis=0), les colonnes (axis=1).

 Exemple :

Notre DataFrame (Df) =

183
Chapitre 4: Bibliothèque Pandas

Tri des données

Méthode sort_values()
• Elle est utilisée pour trier un DataFrame ou une Series en fonction des valeurs
d'une ou plusieurs colonnes.
• Par défaut, le tri ce fait en ordre croissant.

 Exemple :

Notre DataFrame (Df) =

184
Chapitre 4: Bibliothèque Pandas
Groupement et agrégation des données

Méthode groupby () :
• Elle est utilisée pour diviser les données en groupes en fonction de certains critères, puis
d'appliquer une fonction (comme la somme, la moyenne, le comptage, etc.) à chaque groupe
individuellement.
• C'est une fonctionnalité très puissante pour l'analyse de données et la manipulation de DataFrame.

 Exemple :

Notre DataFrame (Df) =

185
Chapitre 4: Bibliothèque Pandas
Concaténation de DataFrame

Méthode concat () :
• La concaténation consiste à fusionner des
DataFrames.
• La méthode concat () permet de fusionner /
concaténer deux dataframes.

 Exemple :
• Supposons que vous ayez deux DataFrames
df1 et df2 que vous souhaitez concaténer :

186
Chapitre 4: Bibliothèque Pandas
Autres méthodes pour le prétraitement des données

Méthode isnull () :
• Elle permet de repérer les lignes où les données sont absentes, c'est-
à-dire celles qui contiennent la valeur "NaN".
 Exemple :

Syntaxe :

DataFrame [ DataFrame['Nom_de_la_colonne'].isnull() ]

187
Chapitre 4: Bibliothèque Pandas
Autres méthodes pour le prétraitement des données

Méthode axes[] :
• [Link][0] : Elle renvoie une liste contenant les index des lignes du DataFrame « df ».
• [Link][1] : Elle renvoie une liste contenant les noms des colonnes du DataFrame « df ».
 Exemple :

188
Chapitre 4: Bibliothèque Pandas
Autres méthodes pour le prétraitement des données

Méthode dropna() :
• Elle permet de supprimez les lignes contenant des valeurs manquantes
« NaN » du dataFrame.

 Syntaxe :
[Link]()

189
Chapitre 4: Bibliothèque Pandas
Autres méthodes pour le prétraitement des données

Méthode between() :
• Elle permet de sélectionner les lignes où les valeurs d'une colonne se situent
dans une plage spécifiée.

 Syntaxe :
[Link](left, right)
• left : Valeur minimale de la plage.
• right : Valeur maximale de la plage.
190
Chapitre 4: Bibliothèque Pandas

Autres méthodes pour le prétraitement des données

Méthode map() :
• Elle facilite la transformation des données dans une colonne en leur attribuant des valeurs
alternatives.
• Elle permet ainsi de mettre à jour rapidement et efficacement les données dans une colonne selon
une logique prédéfinie.

 Syntaxe :
DataFrame['Nom_de_la_colonne'].map(fonction)
• Cette syntaxe permet d'appliquer une fonction à chaque élément d'une colonne spécifique du DataFrame.
 'Nom_de_la_colonne’ : est le nom de la colonne sur laquelle la fonction doit être appliquée.
 ‘fonction’ : est la fonction à appliquer à chaque élément de la colonne.

191
Chapitre 4: Bibliothèque Pandas

Documentation de la bibliothèque Pandas

• Pour plus d’informations et pour voir toutes les fonctions de la


bibliothèques Pandas, visitez sa Documentation.

• Le lien de la documentation de Pandas :

[Link]

192
Chapitre 4: Bibliothèque Pandas

Quiz

193
Chapitre 4: Bibliothèque Pandas

1. Comment importer la bibliothèque Pandas en Python ?


a) import pd
b) import pandas as pd
c) import Pandas
d) from pandas import *
2. Quelle fonction est utilisée pour lire un fichier CSV dans Pandas ?
a) read_csv()
b) load_csv()
c) open_csv()
d) import_csv()
3. Comment sélectionner une colonne spécifique dans un DataFrame Pandas ?
a) df.select_column()
b) df.get_column()
c) df[column_name]
d) [Link]()

194
Chapitre 4: Bibliothèque Pandas

4. Quelle méthode est utilisée pour afficher les premières lignes d'un DataFrame Pandas ?
a) head()
b) show()
c) display()
d) first()
5. Quelle méthode est utilisée pour supprimer une colonne dans un DataFrame Pandas ?
a) drop_column()
b) remove()
c) del_column()
d) drop()
6. Comment obtenir un résumé statistique des données dans un DataFrame Pandas, y compris la
moyenne, l'écart type, le minimum, le maximum, etc. ?
a) summary()
b) describe()
c) stats()
d) summary_stats()

195
Chapitre 4: Bibliothèque Pandas
Correction du Quiz

1. Comment importer la bibliothèque Pandas en Python ?


a) import pd
b) import pandas as pd
c) import Pandas
d) from pandas import *
2. Quelle fonction est utilisée pour lire un fichier CSV dans Pandas ?
a) read_csv()
b) load_csv()
c) open_csv()
d) import_csv()
3. Comment sélectionner une colonne spécifique dans un DataFrame Pandas ?
a) df.select_column()
b) df.get_column()
c) df[column_name]
d) [Link]()

196
Chapitre 4: Bibliothèque Pandas
Correction du Quiz

4. Quelle méthode est utilisée pour afficher les premières lignes d'un DataFrame Pandas ?
a) head()
b) show()
c) display()
d) first()
5. Quelle méthode est utilisée pour supprimer une colonne dans un DataFrame Pandas ?
a) drop_column()
b) remove()
c) del_column()
d) drop()
6. Comment obtenir un résumé statistique des données dans un DataFrame Pandas, y compris la
moyenne, l'écart type, le minimum, le maximum, etc. ?
a) summary()
b) describe()
c) stats()
d) summary_stats()

197
Chapitre 4: Bibliothèque Pandas

TP

198
Chapitre 4: Bibliothèque Pandas

Manipulation des Pandas

199
Chapitre 4: Bibliothèque Pandas

Exercice 1 :

1. Créez un DataFrame à partir d'un dictionnaire Python contenant des données sur des étudiants (noms, âges, notes).
data = {'Nom': ['Alice', 'Bob', 'Charlie', 'David'], 'Âge': [25, 30, 35, 40], 'Note': [85, 90, 75, 80]}
2. Sélectionnez la colonne « Nom » du DataFrame créé.
3. Filtrez les données pour ne montrer que les étudiants ayant une note supérieure à 80.
4. Ajoutez une nouvelle colonne au DataFrame contenant des informations sur la classe (par exemple, classe A, classe
B, etc.).
5. Groupez les données par classe et calculez la moyenne des notes pour chaque classe.
6. Triez le DataFrame par âge, du plus jeune au plus vieux.
7. Supprimez la colonne « Age » du DataFrame.
8. Sauvegardez le DataFrame dans un fichier CSV, puis chargez-le à nouveau dans un nouveau DataFrame.

200
Chapitre 4: Bibliothèque Pandas

201
Chapitre 4: Bibliothèque Pandas

202
Chapitre 4: Bibliothèque Pandas

203
Chapitre 4: Bibliothèque Pandas

204
Chapitre 4: Bibliothèque Pandas

Méthode groupby () :
• Elle est utilisée pour diviser les données en groupes en fonction de certains critères, puis
d'appliquer une fonction (comme la somme, la moyenne, le comptage, etc.) à chaque
groupe individuellement.
• C'est une fonctionnalité très puissante pour l'analyse de données et la manipulation de
DataFrame.
205
Chapitre 4: Bibliothèque Pandas

206
Chapitre 4: Bibliothèque Pandas

207
Chapitre 4: Bibliothèque Pandas

208
Chapitre 4: Bibliothèque Pandas

Exercice 2 :
Créez un programme Pandas pour déterminer le nombre de personnes par 2. Ensuite, comptez le nombre de
ville à partir d'un ensemble de données comprenant les noms de personnes par ville et affichez-les
personnes et les villes. comme suit :

1. Créez un DataFrame (df) à partir d'un dictionnaire. Le résultat


attendu devrait être le suivant :

209
Chapitre 4: Bibliothèque Pandas

210
Chapitre 4: Bibliothèque Pandas

Exercice 3 :

Voir le document Pdf

211
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

212
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

213
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

214
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

215
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

216
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

217
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

218
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

219
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

220
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

221
Chapitre 4: Bibliothèque Pandas
Solution de l’exercice 3

222
Chapitre 5: Bibliothèque Matplotlib
 Qu’est-ce que la Bibliothèque Matplotlib?
 Installation et importation de Matplotlib
 Visualisation des données à l’aide de Matplolib
 Types de diagrammes de Matplotlib

223
Chapitre 5: Bibliothèque Matplotlib

Analyse de données
• Dans le contexte de l'analyse de données, l'utilisation des bibliothèques NumPy et
surtout pandas est courante.
• Pandas fournit des structures de données tabulaires appelées DataFrames, idéales
pour stocker et manipuler des données sous forme de tableaux bidimensionnels.
• En combinant pandas avec Matplotlib, les utilisateurs peuvent non seulement
analyser leurs données, mais aussi les visualiser efficacement.

224
Chapitre 5: Bibliothèque Matplotlib

Visualisation de données
• L'intégration de Matplotlib avec pandas constitue une solution puissante, offrant
un ensemble robuste d'outils de visualisation en Python.
• Les DataFrames de pandas peuvent être directement utilisés comme source de
données pour créer des graphiques avec Matplotlib, simplifiant ainsi le processus
de visualisation.
• Matplotlib et pandas se complètent pour former un duo puissant dans le domaine
de l'analyse de données en Python, permettant aux utilisateurs de passer
facilement des données brutes à des visualisations significatives avec une efficacité
remarquable.
225
Chapitre 5: Bibliothèque Matplotlib

Qu’est-ce que Matplotlib ?


Définition :
• Matplotlib est une bibliothèque de visualisation en Python largement
utilisée.
• Matplotlib est une bibliothèque Python qui offre une large gamme de
fonctionnalités pour la création de graphiques statiques, interactifs et
animés.

226
Chapitre 5: Bibliothèque Matplotlib
Qu’est-ce que Matplotlib ?

Objectifs :
• Elle permet la création de graphiques de qualité professionnelle avec une syntaxe
simple et intuitive.
• Matplotlib prend en charge de nombreux types de graphiques, y compris les
graphiques en barres, les graphiques linéaires, les graphiques en nuages de points,
les histogrammes, les diagrammes en boîte, les diagrammes en violon, les tracés
de contour, etc.

227
Chapitre 5: Bibliothèque Matplotlib
Qu’est-ce que Matplotlib ?

Son utilité :
• Matplotlib est largement utilisé dans les domaines de la science des données, de la
recherche scientifique, de l'ingénierie et de la visualisation de données en général.
• Il permet aux utilisateurs de créer des visualisations claires et informatives à partir
de données complexes.

228
Chapitre 5: Bibliothèque Matplotlib

Installation et Importation de Matplotlib


• La plupart des utilitaires Matplotlib se trouvent sous le pyplot sous-module.

• Avant de commencer avec Matplotlib, nous devons importer le package spécifique souvent désigné
par plt ou plot.

Remarque !
• Parfois, vous trouverez après l’importation
d’une bibliothèque; ce message d’erreur ce
qui signifie que la bibliothèque n’est pas
installée dans jupyter.
229
Chapitre 5: Bibliothèque Matplotlib
Installation et Importation de Matplotlib

Solution :
• Dans ce cas vous devez d’abord installer la bibliothèque à l’aide de la
ligne de commande suivante dans jupyter : !pip install matplotlib

• Ou dans la l’invite de commande anaconda : pip install matplotlib

230
Chapitre 5: Bibliothèque Matplotlib

Partie 1 :Courbes Matplotlib


• Tracage des points
• Marqeurs
• Etiquettes et titres
• Grille

Partie 2 :Graphiques Matplotlib


• Nuage de points (Scatter)
• Diagramme circulaire (pie)
Diagramme à barres (bar)
• Histogramme (hist)
231
Chapitre 5: Bibliothèque Matplotlib

Documentation de la bibliothèque Matplotlib

• Pour plus d’informations et pour voir toutes les fonctions de la


bibliothèques Matplotlib, visitez sa Documentation.

• Lien de la documentation de Matplotlib :

[Link]

232
Chapitre 5: Bibliothèque Matplotlib

Partie 1 :Courbes Matplotlib


• Tracage des points
• Marqeurs
• Etiquettes et titres
• Grille
• Affichage de plusieurs tracés

Partie 2 :Graphiques Matplotlib


• nuage de points (Scatter)
• diagramme circulaire (pie)
diagramme à barres (bar)
• Histogramme (hist) 237
Chapitre 5: Bibliothèque Matplotlib
Tracage Matplotlib

Tracer les points x et y :


• La fonction plot() est utilisée pour dessiner des points (marqueurs) dans un
diagramme.
• Par défaut, la fonction plot() trace une ligne d'un point à l'autre.
• La fonction prend des paramètres pour spécifier des points dans le diagramme.
• Le premier paramètre est un tableau contenant les points sur l' axe des x .Le
deuxième paramètre est un tableau contenant les points sur l' axe y .

234
Chapitre 5: Bibliothèque Matplotlib
Tracage Matplotlib

Tracer les points x et y :


Exemple :
• Si nous devons tracer une ligne dans un diagramme de la position (0,0) à la position (6,250) , nous
devons passer deux tableaux [0, 6] et [0,255] à la fonction plot.

235
Chapitre 5: Bibliothèque Matplotlib
Tracage Matplotlib

Traçage sans ligne :


• Pour tracer uniquement les marqueurs, vous pouvez utiliser le paramètre de
notation de chaîne de raccourci « o », qui signifie « anneaux ».

Exemple:
Dessinez deux points dans
le diagramme, un en
position (1, 3) et un en
position (8, 10) :
236
Chapitre 5: Bibliothèque Matplotlib
Tracage Matplotlib

Points multiples :
• Vous pouvez tracer autant de points que vous le souhaitez, assurez-vous
simplement d'avoir le même nombre de points sur les deux axes.

Exemple :
• Tracez une ligne dans un
diagramme de la position
(1, 3) à (2, 8) puis à (6, 1) et
enfin à la position (8, 10) .
237
Chapitre 5: Bibliothèque Matplotlib
Tracage Matplotlib

Exercice 1 :
Tracez une ligne dans un diagramme de la position (1, 3) à la
position (8, 10).

238
Chapitre 5: Bibliothèque Matplotlib
Solution d’ exercice 1

239
Chapitre 5: Bibliothèque Matplotlib
Marqeurs Matplotlib
Paramètre « marker » :
• Vous pouvez utiliser le paramètre « marker » pour souligner chaque point avec
un marqueur spécifié .

Exemple :
Marquez chaque point
avec un cercle :

240
Chapitre 5: Bibliothèque Matplotlib
Marqeurs Matplotlib
Référence de couleur :
• La valeur de couleur courte peut être l’une des
Référence de ligne :
• La valeur de la ligne peut
suivantes .
être l'une des suivantes.

241
Chapitre 5: Bibliothèque Matplotlib
Marqeurs Matplotlib

Paramètre de notation de chaîne de raccourci « fmt »:


• Vous pouvez également utiliser le paramètre de notation de chaîne de
raccourci pour spécifier le marqueur. Ce paramètre est également appelé
fmt.

Exemple 1 :

242
Chapitre 5: Bibliothèque Matplotlib
Marqeurs Matplotlib
Exemple 2 :
Tracer une ligne en utilisant cette référence de la ligne

243
Chapitre 5: Bibliothèque Matplotlib
Marqeurs Matplotlib

Taille du marqueur « markersize » ou « ms »:


• Vous pouvez utiliser le paramètre markersize ou la version plus courte ms pour
définir la taille des marqueurs.

Exemple:

244
Chapitre 5: Bibliothèque Matplotlib
Marqeurs Matplotlib

Couleur du marqueur « markeredgecolor » ou « mec » :


• Vous pouvez utiliser le paramètre markeredgecolor ou le plus court mec pour définir
la couleur du bord des marqueurs.

Exemple :

245
Chapitre 5: Bibliothèque Matplotlib
Marqeurs Matplotlib

Couleur du marqueur « markerfacecolor » ou « mfc » :


• Vous pouvez utiliser le paramètre markerfacecolor ou le plus court mfc pour définir
la couleur à l'intérieur du bord des marqueurs.
Exemple :

246
Chapitre 5: Bibliothèque Matplotlib
Marqeurs Matplotlib

Couleur de la ligne :
• Vous pouvez utiliser le paramètre color ou le plus court cp pour définir la couleur de
la ligne.

Exemple :
Définissez la couleur
de la ligne sur rouge.

247
Chapitre 5: Bibliothèque Matplotlib
Ettiquettes et titre Matplotlib

Créer des étiquettes :


• Avec Pyplot, vous pouvez utiliser les fonctions xlabel()et ylabel() pour définir une
étiquette pour les axes x et y.
Exemple :
Ajoutez des étiquettes aux axes X et Y .

248
Chapitre 5: Bibliothèque Matplotlib
Etiquettes et titre Matplotlib

Créer un titre :
• Avec Pyplot, vous pouvez utiliser la fonction title() pour définir un titre pour le tracé.
 Exemple : Ajoutez un titre de tracé et des étiquettes pour les axes X et Y.

249
Chapitre 5: Bibliothèque Matplotlib
Etiquettes et titre Matplotlib

Propriétés de police pour le titre et les étiquettes :


• Vous pouvez utiliser le paramètre fontdict dans les fonctions xlabel(), ylabel()et title()
pour définir les propriétés de police pour le titre et les étiquettes.

Exemple :

254
Chapitre 5: Bibliothèque Matplotlib
Etiquettes et titre Matplotlib
Positionner le titre :
• Vous pouvez utiliser le paramètre loc dans la fonction title() pour positionner le titre.
• Les valeurs de ce paramètre sont : « left », « right » et « center ».
• La valeur par défaut est « center ».

251
Chapitre 3: Bibliothèque Matplotlib

Exercice 2 :
Écrivez un programme Python pour tracer une ligne avec une
étiquette appropriée dans l'axe des x, l'axe des y et un titre.

252
Chapitre 3: Bibliothèque Matplotlib
Solution d’exercice 2

253
Chapitre 5: Bibliothèque Matplotlib
Grille Matplotlib

Ajout de lignes de quadrillage :


Vous pouvez utiliser la fonction grid() pour ajouter des lignes de quadrillage au tracé.

Exemple :

254
Chapitre 5: Bibliothèque Matplotlib
Grille Matplotlib

Propriétés de ligne pour la grille :


• Pour afficher uniquement les lignes de quadrillage pour l'axe Y, vous pouvez définir les propriétés de
ligne de la grille, comme ceci :

[Link](color = ' color ', linestyle = ' linestyle ', linewidth = number, axis=‘y’ )

259
Chapitre 5: Bibliothèque Matplotlib
Grille Matplotlib

Exercice 3 :
Tracé d'une ligne avec des marqueurs et une grille.

256
Chapitre 5: Bibliothèque Matplotlib
Solution de l’exercice 3

257
Chapitre 5: Bibliothèque Matplotlib
Grille Matplotlib

Exercice 4 :
Tracé deux lignes avec différentes couleurs et légendes.

258
Chapitre 5: Bibliothèque Matplotlib
Solution de l’exercice 4 :
Grille Matplotlib

259
Chapitre 5: Bibliothèque Matplotlib

Partie 1 :Courbes Matplotlib


• Tracage des points
• Marqeurs
• Etiquettes et titres
• Grille
• Affichage de plusieurs tracés

Partie 2 :Graphiques Matplotlib


• Nuage de points (Scatter)
• Diagramme circulaire (pie)
• Diagramme à barres (bar)
• Histogramme (hist) 264
Chapitre 5: Bibliothèque Matplotlib
Affichage de plusieurs tracés

Fonction subplot()
• Elle permet de dessiner plusieurs tracés sur une seule
figure.

Syntaxe : [Link](2, 3, 4)
• Elle prend trois arguments qui décrivent la disposition
de la figure.
• La mise en page est organisée en lignes et colonnes,
représentées par le premier et le deuxième argument.
• Le troisième argument représente l'index du tracé
actuel.

261
Chapitre 5: Bibliothèque Matplotlib
Affichage de plusieurs tracés
Exemple :
 Si on veut dessiner 6 de tracés sur une seule figure, il suffit de
décriver simplement le nombre de lignes, de colonnes et
l'index du tracé.

 Fonction plot()
 Fonction subplot()
 Fonction title()
 Fonction suptitle()

262
Chapitre 5: Bibliothèque Matplotlib

Partie 1 :Courbes Matplotlib


• Tracage des points
• Marqeurs
• Etiquettes et titres
• Grille
• Affichage de plusieurs tracés

Partie 2 :Graphiques Matplotlib


• Nuage de points
• Diagramme circulaire
• Diagramme à barres
• Histogramme 267
Chapitre 5: Bibliothèque Matplotlib
Graphiques Matplotlib

Types des graphiques :


• Nuage de points
• Diagramme circulaire
• Diagramme à barres
• Histogramme

264
Chapitre 5: Bibliothèque Matplotlib
Fonctions graphiques

Chaque représentation graphique a une fonction correspondante :


• Diagrammes en courbes : Fonction plot()
• Nuage de points : Fonction scatter()
• Diagrammes en barres : Fonction bar()
• Histogrammes : Fonction hist()
• Diagrammes circulaires : Fonction pie()

265
Chapitre 5: Bibliothèque Matplotlib
Nuages de points (Scatter)

Définition :
• En science de données, le nuage de points est
grandement utilisé pour présenter la mesure
de deux ou plusieurs variables liées.
• Il est particulièrement utile lorsque les
valeurs des variables sur l'axe des y
dépendent des valeurs de la variable de
l'axe des x.
• Dans un nuage de points, les points sont
placés sans être reliés.

266
Chapitre 5: Bibliothèque Matplotlib

Nuage de points (Scatter)

Création de nuage de points :


• La fonction scatter() permet de dessiner un nuage de
points.
• Elle trace un point pour chaque observation.
• Elle a besoin de deux tableaux de même longueur, un
pour les valeurs de l'axe des x et un pour les valeurs de
l'axe des y.

Exemple :
L’observation de l’exemple ci-dessus est le résultat du passage de 5 voitures. L'axe X montre l'âge de
la voiture. L'axe Y indique la vitesse de la voiture lors de son passage.
Interprétation : Y a-t-il des relations entre les observations ?
Il semble que plus la voiture est récente, plus elle roule vite. 271
Chapitre 5: Bibliothèque Matplotlib
Nuage de points (Scatter)

Types de relation entre les variables (données):


Les nuages de points peuvent montrer différentes relations, par exemple :
• une relation linéaire ou non linéaire,
• une relation positive (directe) ou négative (inverse)
• la concentration ou la dispersion des données

268
Chapitre 5: Bibliothèque Matplotlib
Nuage de points (Scatter)

Relation linéaire :
• Lorsque les points forment une
ligne droite dans le graphique,
Relation non linéaire :
• Lorsque les points ne forment
pas de ligne ou forment une
ligne qui n’est pas droite.

269
Chapitre 5: Bibliothèque Matplotlib
Nuage de points (Scatter)
Relation positive (directe) :
• Si les points sont regroupés près d'une ligne
qui va du coin inférieur gauche au coin
supérieur droit du graphique, la relation
entre les deux variables est dite positive ou
directe.
Relation négative (inverse) :
• Si les points sont regroupés près d'une ligne
qui va du coin supérieur gauche au coin
inférieur droit du graphique, la relation entre
les variables est dite négative ou inverse.
270
Chapitre 5: Bibliothèque Matplotlib
Nuage de points (Scatter)

Concentration des données :


• Les points peuvent être très
près les uns des autres.
Dispersion des données :
• Les points peuvent être très
dispersés dans l’espace.

271
Chapitre 5: Bibliothèque Matplotlib
Nuages de points (Scatter)

Différents paramètres de la fonction scatter() :


• Il existe de nombreuses options pour personnaliser un nuage de points. On peut modifier :
 Couleur des points, en utilisant l’argument: color
 Taille des points, via l’argument: size.
 Type de marqueur via l’argument: marker.
 Transparence des points via l’argument :alpha.

Exemple :
Ce nuage de points avec des croix rouges
dont la taille aura été modifiée, et avec
50 % de transparence.
272
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Définition :
• Les graphiques à barres doivent être utilisés lorsqu'on veut présenter des segments
d'information.
• Il est parfois appelé graphique à bandes ou graphique à bâtons. Il peut être
horizontal ou vertical.
• Ils présentent habituellement des variables catégoriques ou des variables discrètes.
• Les nombres sur l'axe des x d'un graphique à barres horizontales ou sur l'axe des y
d'un graphique à barres horizontales sont appelés l'échelle.
• Plus la longueur ou la hauteur des barres sont longues ou hautes, plus la valeur est
grande. 273
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Types de diagramme à barres :


Il y a plusieurs types de graphiques à barres qui peuvent être employés :
• Graphique à barres verticales
• Graphique à barres horizontales
• Graphique à barres regroupées

274
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Graphique à barres verticales :


• Les graphiques à barres verticales sont
utiles pour comparer différentes
variables catégoriques ou discrètes,
comme les groupes d'âge, les classes,
les écoles, etc.

275
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Création de diagramme à barres verticales:


• La fonction bar() permet de dessiner des
graphiques à barres.
• Elle prend des arguments qui décrivent la
disposition des barres.
• Les catégories et leurs valeurs représentées
par le premier et le deuxième argument
sous forme de tableaux.
Exemple :
276
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Graphique à barres horizontales :


• Un désavantage des graphiques à
barres verticales, cependant, est le
manque d'espace pour les étiquettes
sous chacune des barres. Lorsque les
étiquettes des catégories sont trop
longues, il se peut qu'un graphique à
barres horizontales soit préférable
pour présenter l'information.

277
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Création de diagramme à barres horizontales:


• Pour afficher des barres horizontalement plutôt que verticalement, utilisez la
fonction barh().
Exemple :

278
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Graphique à barres regroupées :


• Le graphique à barres regroupées est un autre
moyen efficace de comparer des ensembles
de données sur les mêmes endroits ou
éléments.
• Il donne au moins deux informations pour
chacun des éléments sur l'axe des x au lieu
d'une seule.
• Il permet de faire des comparaisons directes
dans un graphique selon l'âge, le genre ou
tout autre élément que vous désirez
comparer. 283
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Création de diagramme à barres regroupées :


• Pour afficher des barres regroupées, utilisez la fonction
bar().
Exemple :
• Sans la ligne [Link](x, categories), les graduations de l'axe
des x seraient simplement les positions numériques [0, 1, 2,
3], sans les étiquettes ['A', 'B', 'C', 'D'], ce qui rendrait le
graphique moins intuitif.

280
Chapitre 5: Bibliothèque Matplotlib
Diagramme à barres (bar)

Différents paramètres de la fonction bar ou barh() :


• Il existe de nombreuses options pour personnaliser des barres. On peut modifier :
 Couleur de la barre, en utilisant l’argument: color
 Largeur de la barre, via l’argument: width.
 Hauteur de la barre via l’argument: height.
Exemple :

281
Chapitre 5: Bibliothèque Matplotlib
Histogramme (hist)

Définition :
• L'histogramme est un outil fréquemment utilisé pour
résumer des données discrètes ou continues qui sont
présentées par intervalles de valeurs.
• Il est souvent employé pour montrer les caractéristiques
principales de la distribution des données de façon
pratique.
• Il est utile pour résumer de grands ensembles de données
(plus de 100 observations).

282
Chapitre 5: Bibliothèque Matplotlib
Histogramme (hist)

Différence entre le graphique à barres et l’histogramme :

283
Chapitre 5: Bibliothèque Matplotlib
Histogramme (hist)

Création de l’Histogramme :
• Pour créer des Histogrammes, il suffit d’utiliser la fonction hist() pour créer des histogrammes.
• Cette fonction utilisera un tableau de nombres pour créer un histogramme, le tableau est envoyé
dans la fonction comme argument.

Exemple :

284
Chapitre 5: Bibliothèque Matplotlib
Diagramme circulaire (pie)

Définition :
• Un graphique circulaire, parfois appelé diagramme en secteurs
ou camembert, est une façon de résumer un ensemble de
données nominales ou de présenter les différentes valeurs
d'une variable donnée ( répartition en pourcentage).
• Ce type de graphique est formé d'un cercle divisé en secteurs.
Chaque secteur représente une catégorie particulière.

285
Chapitre 5: Bibliothèque Matplotlib
Diagramme circulaire (pie)

Création des diagrammes circulaires :


• Pour créer des diagrammes circulaires, il suffit d’utiliser la fonction pie().
Exemple :

286
Chapitre 5: Bibliothèque Matplotlib
Diagramme circulaire (pie)
Différents paramètres de la fonction pie() :
• Pour tirez le coin "Pommes" du centre de cercle, utilisez le paramètre
• Pour ajouter une liste d'explications « explode » dans la fonction pie().
pour chaque coin, utilisez la fonction • Ce paramétre est une liste contenant des valeurs de fraction du rayon
legend() . par lesquelles chaque portion doit être décalée.

• Dans ce cas : 0.2 pour la première portion (‘Pommes'), ce qui signifie que
cette portion sera décalée vers l'extérieur de 20% du rayon.
• 0 pour les autres portions, ce qui signifie qu'elles ne seront pas décalées.
287

Vous aimerez peut-être aussi