Vous êtes sur la page 1sur 28

ème

Economie
&
Gestion

Année Scolaire : 2023/2024

Bases de données
Bibliothèque Pandas

Enseignant : Lotfi Amama


Mise en situation
L’administration d’un club sportif utilise un logiciel Tableur (MS Excel) pour gérer les
abonnements annuels de ses adhérents. Ci-dessous un extrait.
On veut corriger la date de Naissance de Sallami Salem par 02/12/2000.

Code NomPrenom Genre DateNaissance Activite Dateinscription MontantAnnuel

A0123 Sallami Salem M 20-12-2000 Lutte 13-01-2020 044

A0124 Mohsen fraj M 15-03-2002 Boxe 15-05-2015 044

A0123 Sallami Salem M 20-12-2000 Judo 12-05-2014 004

A0124 Mohsen fraj M 15-03-2002 Teakwondo 20-04-2018 004

A0123 Sallami Salem M 20-12-2000 Judo 05-06-2019 004

A0125 Slama Salma F 12-09-2004 Teakwondo 05-12-2018 004

Perte du temps et risque d’erreur


lors de la correction

Sallami Salem s’est inscrit à l’activité « boxe » le 31/11/2020.

Code NomPrenom Genre DateNaissance Activite DateInscription MontantAnnuel


A0123 Sallami Salem M 20-12-2000 Lutte 13-01-2020 044
A0124 Mohsen fraj M 15-03-2002 Boxe 15-05-2015 044
A0123 Sallami Salem M 20-12-2000 Judo 12-05-2014 004
A0124 Mohsen fraj M 15-03-2002 Teakwondo 20-04-2018 004
A0123 Sallami Salem M 20-12-2000 Judo 05-06-2019 004
A0125 Slama Salma F 12-09-2004 Teakwondo 05-12-2018 004
A0123 Sallami Salem M 20-12-2000 Boxe 31-01-2020 450

Perte du temps et risque d’erreur Problème d’espace de stockage à


lors de la correction cause de la duplication des données

P a g e 4 | 28
Le club va participer à une compétition, seulement les adhérents nés en 2002 ou ayant
une ancienneté d’au moins de quatre ans vont y participer.

Code NomPrenom Genre DateNaissance Activite Dateinscription MontantAnnuel

A0124 Mohsen fraj M 15-03-2002 Boxe 15-05-2015 055

A0123 Sallami Salem M 20-12-2000 Judo 12-05-2014 005

A0124 Mohsen fraj M 15-03-2002 Teakwondo 20-04-2018 005

A0125 Slama Salma F 12-09-2004 Teakwondo 05-12-2018 005

Problème d’espace de
Perte du temps et risque Problème d’ambiguïté de la
stockage à cause de la
d’erreur lors de la correction recherche
duplication des données

Vu tous les problèmes rencontrés, l’administration du club a consulté un expert


informatique. Ce dernier a conseillé le club de créer une base de données pour résoudre
tous les problèmes.

Code NomPrenom Genre DateNaissance Activite Dateinscription MontantAnnuel


A0123 Sallami Salem M 20-12-2000 Lutte 13-01-2020 044
A0124 Mohsen fraj M 15-03-2002 Boxe 15-05-2015 044
A0123 Sallami Salem M 20-12-2000 Judo 12-05-2014 004
A0124 Mohsen fraj M 15-03-2002 Teakwondo 20-04-2018 004
A0123 Sallami Salem M 20-12-2000 Judo 05-06-2019 004
A0125 Slama Salma F 12-09-2004 Teakwondo 05-12-2018 004

Relation

P a g e 5 | 28
Définitions :
Une Base de Données est un ensemble structuré de données enregistrées sur des mémoires
secondaires créé et tenu à jour pour les besoins d’un ensemble d’utilisateurs.

Exemple : Bases de données des adhérents d’un club


Base de données des élèves dans un lycée
Base de données des articles d’un magasin
Base de données des clients dans une banque
Le Système de gestion de bases de Données (SGBD) :

C’est l’outil permettant de créer des bases de données, mettre à jour les données de la
base (ajout, modification, suppression), de rechercher des données, et de les imprimer.

Les principaux SGBD : Oracle, SQL Server, My SQL, Ms Access

Vocabulaire :

Table Colonnes (Champs)

Lignes(enregistrements)

Evaluation :

Modification des données


SGBD

Bases de Ensemble de données relatives à un sujet


données spécifique

Table Système de Gestion de Base de Données

Une colonne Un enregistrement

Une ligne Ensemble des données structurées

Mise à jour Un champ


des données

P a g e 6 | 28
Réalisation d’une base de données :
Soit la base de données simplifiée intitulée "Gestion_Notes" décrite
par le schéma textuel suivant :
Eleve ( ID_Eleve, nom, prenom, DateNaissance, classe )
Matiere ( ID_Matiere, Libelle_Matiere, Coefficient)
Notes ( Id_Eleve, ID_Matiere, Note )

Définitions :

Une table est une collection de données relatives à un sujet spécifique du monde réel.
Ces données sont organisées en colonnes (champs, attributs) et en lignes
(enregistrements).

Constatations
On remarque que les données d’une colonne ont le même type et la même signification :
 La colonne ID_Eleve contient des données de la même forme texte de 4 caractères.
 La colonne Date_Naissance contient des données de type date avec la même forme
jj/mm/aaaa.

Chaque table contient un certain nombre de champs appelés aussi attributs. Ces
champs représentent les caractéristiques des éléments qu’on souhaite stocker dans la
table. Par exemple, dans la table Eleve, on trouve ID_Eleve, Nom, Prenom,
Date_Naissance, Classe.
Lors de la création d’un champ, on
doit spécifier son nom, son type et ses
propriétés.

Dans la table Eleve, Le champ ID_Eleve identifie d’une façon unique un élève : 2
élèves peuvent avoir le même nom, le même prénom, la même date de naissance mais
2 élèves ne peuvent pas avoir le même ID_Eleve.
Dans ce cas, ce champ représente la clé primaire de la table Eleve. D’où, toute table
d’une base donnée doit avoir une clé primaire.
En pratique, une clé primaire est représentée par le symbole

P a g e 7 | 28
Création d’une table :
 On se propose de créer la table Eleve de la base de données Gestion_Notes avec les
propriétés suivantes :

Eleve ( ID_Eleve, nom, prenom, DateNaissance, classe )

Champ Type Propriété


ID_Eleve Texte Taille=4
Nom Texte Taille=50
Prenom Texte Taille=40
Date_Naissance Date/Heure Date abrégé
Classe Texte Taille=8

Reconnaitre les menus et les commandes nécessaires pour créer une table.
...............................................................................................................
...............................................................................................................
...............................................................................................................

 Faire le même travail avec les tables Matiere, Notes :

Matiere ( ID_Matiere, Libelle_Matiere, Coefficient)


Notes ( Id_Eleve, ID_Matiere, Note )

Matiere
Champ Type Propriété
ID_Matiere Texte Taille=4
Libelle_Matiere Texte Taille=30
Coefficient Numérique Taille=Réel simple

Notes
Champ Type Propriété
ID_Eleve Texte Taille=4
ID_Matiere Texte Taille=4
Note Numérique Taille=Réel simple

Remarque

 La table Notes admet comme clé primaire 2 champs : ID_Eleve et ID_Matiere.


 Les 2 sont des clés primaires dans d’autres tables. On dit que ID_Eleve est une clé
étrangère. De même pour ID_Matiere.

Une clé étrangère est un attribut ou un groupe d'attributs d'une table T1 devant
apparaître comme clé primaire dans une autre table T2.

P a g e 8 | 28
Relations entre les tables :
Nous allons prendre 3 exemples pour mieux comprendre le concept de relations.
À gauche et à droite nous retrouvons les tables avec, en titre, leur nom suivi de leurs
champs.
Au centre, nous utilisons un verbe qui peut être utilisé dans la relation entre les 2 tables.

Dans cet exemple, on peut dire qu’un Individu possède une seule Carte d’identité.
Dans le sens inverse, une Carte d’identité ne peut être possédée que par un seul Individu.
La relation est donc 1 à 1.

Ici, on peut dire qu’un Client peut recevoir plusieurs Factures. À l’inverse, une
facture ne peut être reçue que par un seul Client. La relation est donc 1 à plusieurs.

Enfin, dans cet exemple, nous pourrons dire qu’un étudiant peut suivre plusieurs
Cours, mais aussi qu’un Cours peut être suivi par plusieurs étudiants.
La relation est donc plusieurs à plusieurs.
Maintenant, nous allons mettre en application ce que nous venons de voir pour créer les
relations entre les tables de notre base de données.
 Une note, dans une matière, n’est
affectée qu’à un seul élève
 Un élève peut avoir plusieurs notes
 Une note est associée à une matière
 Plusieurs notes peuvent affectées à une
matière pour plusieurs élèves.

P a g e 9 | 28
Remarque

Pour mettre en place une relation, il faut au minimum :


 Deux tables.
 Un champ en commun dans chacune des tables.
 Le même type de champ (Texte avec texte, numérique avec numérique ...).
 La même longueur (impossible de relier un champ de 15 caractères avec un autre
de 50 caractères !).

 Créer les relations entre les tables de la base de données « Gestion_Notes ».

Reconnaitre les menus et les commandes nécessaires pour créer une relation.
...............................................................................................................
...............................................................................................................
...............................................................................................................

- Appliquer l'intégrité référentielle permet de vérifier que les champs liés dans les
deux tables sont parfaitement identiques par leur forme (type de données) et leur
contenu.
- Mettre à jour en cascade les champs correspondants permet la mise à jour
automatique dans la table liée des changements de contenu de la clé primaire dans
la table source.
- Effacer en cascade les enregistrements correspondants permet de supprimer
automatiquement dans la table liée les enregistrements effacés dans la table
source.

P a g e 10 | 28
Les requêtes :
Soit la base de données « gestion_notes_élèves »

Matière Elève

Note

Le directeur

Imprimer-moi la liste des élèves qui ont des notes en « informatique »>17

 Pour répondre au besoin du directeur du lycée, on a besoin


d’interroger la base de données.
 L’interrogation avec les bases de données se fait à travers des
requêtes.

- Une requête est un moyen d’interroger une base de données (sélectionner, modifier,
Supprimer ou ajouter des données).
- Une fois la requête exécutée, le résultat peut être utilisé dans d’autres structures et
d’autres situations.
- Il existe plusieurs types de requêtes :

- La liste des élèves de la classe 4Eco1 Requête de mise à jour


- Changer la classe d’un élève Requête de sélection
- Un élève qui quitte le lycée Requête de suppression
- Un élève qui vient d’un autre lycée Requête paramétrée
- Afficher les notes pour un élève donné Requête d’ajout

P a g e 11 | 28
Le directeur
R1  Afficher la liste des élèves (Nom, prénom)

Le directeur
R2  Afficher la liste des élèves de la classe « 4ECO1 »

Le directeur
R3  Afficher les matières (Libelle_matiere) dont le coefficient est >= 2

Le directeur
R4  Afficher la liste des élèves dont le nom commence par la lettre « B »

P a g e 12 | 28
 Afficher les noms et les prénoms des élèves ayants une note supérieure à 15.

 Afficher les noms et prénoms des élèves ayant une note supérieure à 17 en
« informatique ».

 Afficher les élèves (nom, prénom) dont le nom est différent de « ben salem ».

 Afficher les élèves (nom, prénom) dont le 2ème caractère du prénom est « a ».

 Afficher les élèves (nom, prénom) dont l’avant dernier caractère du prénom est « i ».

 Afficher les élèves (nom, prénom, date naissance) nés avant le 01/06/2003.

 Afficher les élèves (nom, prénom, date naissance) nés avant avril 2003.

 Afficher les élèves (nom, prénom, date naissance) qui ne sont pas nés pendant 2003.

P a g e 13 | 28
 Afficher les élèves (nom, prénom, date naissance) nés entre 01/01/2003 et 01/05/2003.

 Afficher les matières (libellé_matiere) dont le coefficient est 3 ou le nom commence


par « i ».

 Afficher la somme des coefficients des matières.

 Afficher nombre des matières.

Remarque
Toutes les requêtes crées précédemment sont des requêtes de ..........................
 Supprimer les élèves de la classe « 4eco5 ».

Il s’agit d’une requête de ..........................

Remarque

Pour apparaitre la ligne supprimer, cliquer sur du menu créer.


 On désire ajouter les élèves de la table liste_attentes à la table élève.

Il s’agit d’une requête de ..........................

P a g e 14 | 28
Reconnaitre les menus et les commandes nécessaires pour créer cette requête.
...............................................................................................................
...............................................................................................................
...............................................................................................................

Soit la base de données intitulée « Gestion_Parc ».

 Véhicule (Num_immat, Marque, Modèle, Catégorie)


 Place (Num_place, Adresse, Coût_heure)
 Stationner (Num_immat, Num_place, Date, Heure_deb, Heure_fin)

Dans cette question, il s’agit d’une requête de .....................................

Remarque
Pour apparaitre la ligne Mise à jour, cliquer sur du menu Créer.

Soit la base de données intitulée « Code_Route ».

 Candidat (Id_candidat, Nom, Prénom, Adresse, Date_Nais)


 Evaluation (Id_candidat, Id_examen, Nbr_fautes)
 Examen (Id_examen, Date, Lieu)

P a g e 15 | 28
 Reporter de 3 jours tous les examens qui auront lieu à Nabeul.

 Diminuer de 2 jours tous les examens qui auront lieu à Korba.

 Afficher les candidats (Nom, prénom, Date_nais) qui passeront un examen pour une
date donnée.

 Afficher les candidats (Nom, prénom) qui passeront un examen pour un lieu donné.

Dans les 2 dernières questions, il s’agit d’une requête de .....................................

Les différents types de requêtes


 La requête sélection
Ce type de requête permet de sélectionner des enregistrements, de faire des calculs et des regroupements. La
requête Sélection est le type de requête le plus courant.
 La requête Mise à Jour
Cette requête modifie le contenu d’un ou plusieurs champs d’une ou plusieurs tables. C’est le moyen le plus
efficace pour mettre à jour un grand nombre d’enregistrements en une seule opération.
 La requête Ajout
La requête ajout permet d’insérer les enregistrements d’une table n° 2 dans une table n° 1. L’opération ne peut
se faire que si les deux tables ont au moins un champ commun (même nom, même type de données ou conversion
de type possible).
 La requête Suppression
Cette requête supprime un ou plusieurs enregistrements dans une ou plusieurs tables.
Vous pouvez utiliser une requête de suppression pour supprimer des enregistrements entiers d’une base de
données, y compris la valeur de clé.

P a g e 16 | 28
Afin de gérer les produits livrés à ces clients, une société utilise la
base de données simplifiée intitulée "Gestioncommerciale" décrite par
le schéma textuel suivant :

 Produit (CodeProduit, Designation, PU, QteStock, Disponible)


 Client (CodeClient, RaisonSociale, Adresse, Tel, Ville)
 Commande (NumComm, DateComm, CodeClient)
 DetailCommande (Numcomm, CodeProduit, QteComm)

1) Créer, dans votre dossier de travail, la base de données "Gestioncommerciale ".


2) Créer les tables et les relations relatives à cette base de données tout en respectant
les types, les tailles, les formats et les contraintes cités dans la description ci-dessous.

Nom Description Type Taille Format Contrainte


CodeClient Code du client Texte 10
RaisonSociale Nombre de places d’une table Numérique Entier Null interdit
Adresse Identifiant d’un serveur Texte court 3
Ville Nom et prénom d’un serveur Texte court 50 Null interdit
Tel Code d’un plat Texte court 5
NummComm Nom d’un plat Texte court 50 Null interdit
DateComm Prix d’un plat exprimé en DT Numérique Entier >0
CodeProduit Date d’une commande Date/Heure Date abrégé
Designation Heure d’une commande Date/Heure Heure abrégé
QteStock Nombre de plats commandés Numérique Entier >0
PU Prix unitaire Réel
QteComm Quantité commandée Numérique Entier Null Interdit
Disponible Quantité disponible en stock Numérique Entier

Liste des Clients


CodeClient RaisonSociale Adresse Ville Tel
Thom Thomson 12, bd de la liberté Sousse 27272727
UNI Unitex 14, bd de l’indépendance Mahdia 28282280
MAN Manatex 70, Zone industrielle Sousse 97225225
RAT Royal Air Tunis 21, bd salam Tunis 98145005

Liste des Produits


CodeProduit Designation PU QteStock Disponible
R11 Routeur 2600 20 Oui
C12 Chargeur 190 30 Oui
M32 Magnétophone 245 50 Oui
P75 Haut-Parleur 98 62 Oui
C59 Calculatrice 52 75 Oui

P a g e 17 | 28
Liste des commandes Détail Commande
CodeClient NummComm DateComm NummComm CodeProduit QteComm
Thom 1 10-01-2022 7 C12 10
UNI 2 26-01-2022 1 P75 8
MAN 3 13-02-2022 1 C59 15
RAT 4 30-03-2022 2 M32 13
MAN 5 15-05-2022 2 R11 3
UNI 6 01-06-2022 3 R11 5
MAN 7 10-06-2022
4 P75 12
6 C59 20
6 M32 10
6 P75 9
Réaliser les requêtes suivantes :
1. Liste des clients triée par ville.
2. Liste des clients à Sousse (masquer la ville).
3. Liste des clients hors Sousse.
4. Liste des clients sur Sousse dont la raison sociale commence par M.
5. Liste des clients sur Mahdia ou dont la raison sociale commence par M.
6. Liste des clients dans la ville de Mahdia ou Sousse.
7. Liste des commandes par client triée par Raison Sociale.
8. Liste des commandes des clients habitant Sousse.
9. Liste des commandes à partir du 06/03/2022.
10. Liste des commandes de la dernière semaine du mois de Mars.
11. Calculer le Prix HT par commande sachant que : Prix HT = PU * Qté
12. Nbre de Clients par ville (la fonction Compte).
13. Nbre de clients sur Sousse.
14. Nbre de commande par date.
15. Total HT par commande (la fonction Somme).
16. Moyenne des Prix HT par Commande.
17. Par client et par commande, calculer la moyenne des Prix HT.
18. Nbre de commandes par Client.
19. Total HT de toutes les commandes par client.
20. Total HT de toutes les commandes par date.
21. Le jour où la société à réaliser le maximum des commandes.
22. Le jour où la société à réaliser le minimum des commandes
23. Le meilleur client : celui qui a le plus grand total des commandes.
24. Le mauvais client.

P a g e 18 | 28
Analyse des données

P a g e 19 | 28
Mise en situation

Soit la société « NourMX », société spécialisée dans la production et la


commercialisation des meubles. Les graphiques ci-dessous présentent quelques statistiques
sur les ventes de cette société. On veut analyser ces données pour pouvoir prendre les
bonnes décisions pour la future période de la société.

Ventes des Meubles


700

600
600
500
500
400

360 350 300


320 320 300 300
240 250 200
200
150 160 100
120 120 100 120
90
0
Living bureaux Cuisine Salon chambre chambre à
d'enfants coucher

trimestre1- 2022 trimestre2 -2022 trimestre3 -2022

Chambre à Coucher

Zouhour

Opéra

Clara

Dina

Mélina

Dorsaf

140 120 100 80 60 40 20 0

trimestre3 -2022 trimestre2 -2022 trimestre1- 2022

P a g e 20 | 28
% ventes
Living
17% chambre à coucher
23%
bureaux
8%
chambre d'enfants
Cuisine 14%
12%

Salon
26%

chambre à coucher chambre d'enfants Salon Cuisine bureaux Living

Définition
L’analyse de données (Data Analysis),, est de plus en plus utilisée dans les entreprises
de tous les secteurs:
Grâce aux technologies du numérique, les entreprises ont désormais accès à des vastes
volumes de données. Comprendre et analyser ces informations est un précieux atout.

Pourquoi ?
Extraire des informations exploitables pour prendre de meilleures décisions au sein
d’une entreprise.
Il s’agit en réalité de se baser sur le passé et le présent afin de prendre les bonnes
décisions pour le futur.
Ceci peut se révéler très utile pour la croissance d’une entreprise, pour développer de
nouveaux produits ou pour trouver des solutions aux problèmes.

Les outils d'analyse de données :


Il existe de nombreux outils d’analyse de données permettant aux utilisateurs de traiter
et de manipuler les données plus facilement.
En guise d’exemple, on peut citer les langages de programmation Python, les logiciels
Talend et Apache Spark, ElasticSearch ou encore Microsoft HDInsight.

La bibliothèque Pandas
La bibliothèque 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.

P a g e 21 | 28
Le nom « Pandas » est en fait la contraction du terme « Panel Data » désignant les
ensembles de données incluant des observations sur de multiples périodes temporelles.
Cette bibliothèque a été créée comme un outil pour l’analyse en Python.
Le fonctionnement de Pandas repose sur les « DataFrames » : des tableaux de données
en deux dimensions.

P a g e 22 | 28
Soit le tableau suivant représentant des smartphones d’une société MyPhone:

1) Lancer l'éditeur Thonny.


2) Enregistrer votre travail dans un fichier ayant pour nom « tp1 pandas » et pour
emplacement votre dossier personnel « C:/bac2024».
3) Taper les lignes suivantes :

import pandas as ps
df = ps.read_csv (”tel.csv”,sep=”;”)
print (df )

4) Cliquer sur le bouton exécuter pour afficher le résultat de ce code.


5) Déduire le rôle des deux commandes suivantes :

Commande Rôle

ps.read_csv ( ) ..............................................................................................................................

print (df) ..............................................................................................................................

IdDataFrame = pandas.read_excel ("Chemin/ Nom_Fichier.extension",


Création et
"Nom_Feuille")
importation d’un
IdDataFrame = pandas.read_csv ("Chemin/Nom_Fichier.extension", sep =
DataFrame
"séparateur")

P a g e 23 | 28
IdDataFrame.shape ou bien print ( IdDataFrame.shape )
IdDataFrame.size ou bien print ( IdDataFrame.size )
IdDataFrame.info ( ) ou bien print ( IdDataFrame.info ( ) )
IdDataFrame.describe ( ) ou bien print ( IdDataFrame.describe ( ) )
Manipulation d’un IdDataFrame.columns ou bien print ( IdDataFrame.columns )
DataFrame
IdDataFrame.rename ( columns = { "NomColonne1" : "NouveauNomColonne1", "NomColonne2" : "NouveauNomColonne2", … } , inplace= True )
Resultat = IdDataFrame.drop ( columns = [ "NomColonne1",…,"NomColonneN" ] )
Resultat = IdDataFrame.drop ( [ Indice_Ligne ] )
Resultat = IdDataFrame.drop ( IdDataFrame.index [ N° LigneInitial : N° LigneFinal ] )

6) Déduire le rôle de la commande print(df)


……………………………………………………………………………………………………...................................................................................................................................................................

7) Déduire le rôle de la commande df.shape


……………………………………………………………………………………………………...................................................................................................................................................................
8) Déduire le rôle de la commande df.info()
……………………………………………………………………………………………………...................................................................................................................................................................
9) Déduire le rôle de la commande df.describe
……………………………………………………………………………………………………...................................................................................................................................................................
10) Déduire le rôle de la commande df.columns
……………………………………………………………………………………………………...................................................................................................................................................................
11) Changer le nom de la colonne prix en PU.
……………………………………………………………………………………………………...................................................................................................................................................................
12) Supprimer la colonne NOMBRE DE SIM.
……………………………………………………………………………………………………...................................................................................................................................................................
13) Supprimer la ligne N°10.
……………………………………………………………………………………………………...................................................................................................................................................................

P a g e 24 | 28
IdDataFrame ou bien print ( IdDataFrame )
IdDataFrame [ "NomColonne" ] ou bien print ( IdDataFrame [ "NomColonne" ] )
IdDataFrame [ [ "NomColonne1" , "NomColonne2" , …] ] ou bien print ( IdDataFrame [ [ "NomColonne1" , "NomColonne2" , …] ] )
Affichage des IdDataFrame [ "NomColonne" ] [ N° LigneInitial : N° LigneFinal ] ou bien print (IdDataFrame [ "NomColonne" ] [ N° LigneInitial : N° LigneFinal ])
données IdDataFrame.head ( n ) ou bien print ( IdDataFrame.head ( n ) )
d’un DataFrame IdDataFrame.tail ( n ) ou bien print ( IdDataFrame.tail ( n ) )
IdDataFrame.iloc [ N° Ligne ] ou bien print ( IdDataFrame.iloc [ N° Ligne ] )
IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] ou bien print ( IdDataFrame.iloc [ N° LigneInitial : N° LigneFinal ] )
IdDataFrame.iloc [ N° Ligne , N° Colonne ] ou bien print ( IdDataFrame.iloc [ N° Ligne , N° Colonne ] )

14) Afficher seulement la colonne Marque.


……………………………………………………………………………………………………...................................................................................................................................................................
15) Afficher les colonnes Marque, Modele, Prix.
……………………………………………………………………………………………………...................................................................................................................................................................
16) Afficher les 5 premières marques.
……………………………………………………………………………………………………...................................................................................................................................................................
17) Afficher les prix du 5ème téléphone au 10ème téléphone.
……………………………………………………………………………………………………...................................................................................................................................................................
18) Afficher les informations relatives aux 5 premiers téléphones.
……………………………………………………………………………………………………...................................................................................................................................................................
19) Afficher les informations relatives aux 3 derniers téléphones.
……………………………………………………………………………………………………...................................................................................................................................................................
20) Afficher les informations relatives au 4ème téléphone.
……………………………………………………………………………………………………...................................................................................................................................................................

P a g e 25 | 28
IdDataFrame.loc [ N° ligne , "NomColonne" ] = Valeur (ou Formule)
Modification et ajout des données dans un Id_DataFrame.loc [ N° ligne ] = [ Liste_Valeur ]
DataFrame Id_DataFrame [ "NomColonne" ] = Valeur (ou Formule)

21) Tester la commande df.loc[0, ″couleur″]=″Blanc″ , que remarquez-vous ? Déduire le rôle.


…………………………………………………………………………………………………………………………………………………………………………………………………………………………
22) Créer une nouvelle colonne nommée PARE dont le contenu est calculé après une remise de 10%.
…………………………………………………………………………………………………………………………………………………………………………………………………………………………

Resultat = Id_DataFrame.drop_duplicates ( )
Nettoyage d’un DataFrame Resultat = Id_DataFrame.dropna ( )
Resultat = Id_DtaFrame.dropna ( axis = 1 )

23) Supprimer les lignes vides existant dans le DataFrame "df".


……………………………………………………………………………………………………................................................................................................................................................................
24) Supprimer les colonnes contenant des valeurs nulles du DataFrame "df"
……………………………………………………………………………………………………................................................................................................................................................................

Les fonctions statistiques mean ( ) – min ( ) – max ( ) – sum ( ) – count ( )

25) Tester la commande (print(df["Prix"].mean()), que remarquez-vous ? Déduire le rôle.


…………………………………………………………………………………………………….............................................................................................................................................................
26) Changer la commande précédente pour tester min, max, sum, count, Déduire le rôle.
…………………………………………………………………………………………………….............................................................................................................................................................
…………………………………………………………………………………………………….............................................................................................................................................................
…………………………………………………………………………………………………….............................................................................................................................................................

P a g e 26 | 28
IdDataFrame [ IdDataFrame [ "NomColonne" ] OperateurComparaison Valeur ]
Affichage des données d’un DataFrame
selon une ou plusieurs conditions IdDataFrame [( IdDataFrame ["NomColonne"] OperateurComp Valeur) OperateurLogique (
IdDataFrame ["NomColonne"] OperateurComp Valeur )]

27) Tester la commande print(df[df[″Prix″]>=500], déduire le rôle.


……………………………………………………………………………………………………...........................................................................................................................................................
28) Tester la commande print(df[df[″Prix″]==299].
……………………………………………………………………………………………………...........................................................................................................................................................
29) Tester la commande print(df["couleur"].isin(["Rouge","Rose"])), Déduire le rôle.
……………………………………………………………………………………………………..........................................................................................................................................................

Les opérateurs de comparaison


== < <= > >= != isin

30) Tester la commande print(df[(df["Prix"]>=14) &(df["Prix"]<=16)]), Déduire le rôle.


……………………………………………………………………………………………………................................................................

Les opérateurs logiques


| Ou logique
& Et logique

Tri des éléments d’un DataFrame_Trié = IdDataFrame.sort_values ( by = [ "NomColonne1" ,"NomColonne2" , …] , ascending = [ True/False ,
DataFrame True/False , … ] )

31) Tester la commande dft=df.sort_values(by=["Prix"], ascending=True)


print(dft), Déduire le rôle.
……………………………………………………………………………………………………........................................................................................................................................................
32) Changer la valeur True par False.

P a g e 27 | 28
import matplotlib.pyplot as alias_matplotlib
Création d’un IdDataFrame.plot.bar (x = "NomColonneAbscisse" , y = "NomColonneOrdonnée" , title = "TitreGraphique" , color = "CouleurGraphique" )
graphique IdDataFrame.plot.line (x = "NomColonneAbscisse" , y = "NomColonneOrdonnée" , title = "TitreGraphique" , color = "CouleurGraphique" )
alias_matplotlib.show ( )

33) Ajouter la ligne suivante en haut du programme : import matplotlib.pyplot as plt


34) Tester la commande :
df.plot.bar(x="Modèle", y="Prix", title="Graphique des Prix", color="red")
plt.show(). Déduire le rôle.
……………………………………………………………………………………………………........................................................................................................................................................

35) Changer la valeur bar par line.


……………………………………………………………………………………………………........................................................................................................................................................

P a g e 28 | 28

Vous aimerez peut-être aussi