0% ont trouvé ce document utile (0 vote)
33 vues95 pages

Python Formation

Transféré par

holinesstchitembo
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
33 vues95 pages

Python Formation

Transféré par

holinesstchitembo
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 95

FORMATION PYTHON Formatrice: Wided

Majdoub
PLAN
1- Introduction a Python
2- Premiers pas: Données et variables (typage, affichage, opérateurs), les
principaux types de données, les instructions conditionnelles, les instructions
répétitives, importation des librairies.
3- Les fonctions
4- Les structures de données
5- Manipulation des fichiers (importation, lecture, écriture)
6- Création et manipulation des bases de données avec Python (module MongoDB)
7-Web Scraping
8- Nettoyage de données
9- Visualisation de données
10- Mini Projet de validation
INTRODUCTION A PYTHON
C’est un langage de programmation,
Concu par Guido Van Rossum
Sa première publication: en 1991
USE CASE
* Data Science
* Gaming development
* Web development
* Desktop development
* Business Intelligence Apps
LES PROJETS BASÉS SUR
PYTHON
INSTALLATION
PREMIERS PAS: DONNÉES &
VARIABLES

- Variable: c’est le nom donné a une valeur.


- Syntaxe: Var_name = valeur
-Exemple: nom = ‘Amine’
- Règles d’écriture du nom d’une variable:
- Par convention les noms des variables sont écrites en minuscules,
elles commencent par une lettre ou le caractère souligné, par des
lettres des chiffres.
- Elles doivent être différents de la liste des mots réservés de
Python.
MOTS CLÉS RÉSERVÉS
SYNTAXE
OPÉRATEURS
* Commentaire:
#c’est un commentaire
* Opérateurs logiques: And , Or, not
* Opérateurs de comparaison: ==, >, <, <=, >=, !=
* Opérateurs mathématiques: =, +, *, /
6+5 => 11
* Var = 2 => Affectation
EXERCICE
EXERCICE
On va déclarer plusieurs variables et faire la comparaison entre
elles.
AFFICHAGE
- L’instruction print() permet d’afficher la valeur d’une variable a
l’écran.
Syntaxe: Print(varName)
Exemple: On a déclaré la variable name = ‘Ahmed’, pour faire
l’affichage du contenu de la variable name:
Print(name)
EXERCICE
On va déclarer deux variables: Nom & Prénom et faire l’affichage
de ces variables sur une seule ligne.
ENTRÉE CLAVIER: INPUT()

- L’instruction input() permet saisir une entrée au clavier.


- Elle effectue un typage dynamique (detecte le type de la valeur
entrée).
Syntaxe: var_name = input(message)
Exemple suivant:
myVar = input(‘Tapez votre nom’)
EXERCICE
On doit savoir l'âge de l’étudiant Anis, comment résoudre ce
problème ?
NOTION DE BLOC
D’INSTRUCTIONS
- D’autres langages délimitent un bloc par les symboles {} ou bien
BEGIN , END
- Python utilise l’indentation
- Un bloc d’instructions est une suite d’instructions qui est alignée
sur la même tabulation.
- Les blocs sont utilisées pour définir les corps de fonctions des
boucles, des classes, …
LES TYPES
- Pas de déclaration explicite du type d’une variable!
- Le type d’une variable est celui de la valeur qu’on lui attribue.
type(varName) => nous donne le type de la variable
Exemple:
Name = ‘wided’
type(name) => str
LES TYPES DE DONNÉES
EXERCICE
LES STRUCTURES DE
DONNÉES: SÉQUENCES
Une séquence est un conteneur ordonné d’éléments, indicés par
des entiers.
- Python dispose 3 types prédéfinis de séquences:
* Les listes
* Les tuples
* Les chaines
LES CHAINES DE
CARACTÈRE: OPÉRATIONS
* Concaténation:
* Syntaxe:
mychar1 = ‘Wided’
mychar = ‘Wided’
myChar2 = ‘’Ahlem’’
myChar = ‘’wi’ded’’
myChar3 = myChar1 +
myChar = ‘’’Wided myChar2
Majdoub * Répétition:
‘’’
myChar = ‘A’
* Longueur:
Resultat = myChar*3
Len(myChar)
LES CHAINES DE
CARACTÈRE: OPÉRATIONS
LES CHAINES DE
CARACTÈRE: MÉTHODES
* Split(): * lower():
‘Wid*ed’.split(‘*’) ‘PETIT’.lower()
* Join(): concatenation * upper(): ‘grand’.upper()
‘-’.join([‘ci’, ‘joint’]) * Capitalize():
* find():donne la position d’une ‘wided’.capitalize()
chaine * title():
‘abracadabra’.find(‘bra’) ‘un titre’.title()
* count(): * swapcase():
‘abracadabra’.count(‘bra’) ‘bOB’.swapcase()
* Strip(): Supprime les blancs * replace():
‘ Trop de Blancs ’.strip() ‘grand’.replace(‘a’, ‘b’)
QUIZ TIME
http://www.quiz-maker.com/Q4Z2XU5NC
EXERCICE
•Ecrire un programme qui permet de :
• Saisir au clavier une chaine de caractères
• Afficher la taille de cette chaine de caractères avec la fonction
prédéfinie len()
•Remplacer les lettres ‘A, B’ par ‘C’, puis trouver la position de ces
chaines par la méthode find()
•Compter le nombre d’occurrence d’un mot ou d’une lettre définis.
•Attention aux majuscules & minuscules !
FORMATER UNE
STR(FORMAT)
- Pour formater une str on utilise sa fonction format
- la chaine en question doit contenir des {}
- Les {} seront remplacés dans l’ordre par les paramètres de la
fonction format
- Exemple:
EXERCICE
CODE SOURCE : LES
LISTES

Une liste est une collection hétérogène d'éléments ordonnés et


modifiables séparés par une virgule et entourée de crochets
couleurs = ['rouge', 'vert', 'bleu', 'jaune' ]
print couleurs # ['rouge', 'vert', 'bleu', 'jaune']
print couleurs[1] # 'vert'
couleur[1] = 7
print couleurs # ['rouge', 7, 'bleu', 'jaune'])

list1 = [1, 2, 5.0]


list2 = ['a', 'b', 'c']
list3 = [list1, list2] # une liste de liste
print list3 # [[1, 2, 5.0], ['a', 'b', 'c']]
CODE SOURCE : LES LISTES,
MÉTHODES ET ACCÈS

nombres = [5, 1, 9 ,30, 18]


nombres.sort() # [1, 5, 9 , 18, 30]
nombres.append(10) # [1, 5, 9 , 18, 30, 10]
nombres.reverse() # [10, 30, 18, 9, 5, 1]
nombres.index(18) # 2
nombres.remove(30) # [10, 18, 9, 5, 1]

L'indiçage d'une liste s'effectue de la même manière qu'une


chaîne de caractères
nombres[1:3] # [18, 9]
nombres[:2] # [10, 18]
nombres[:] # [10, 18, 9, 5, 1]
nombres[-1] # 1
CODE SOURCE : LES LISTES,
INITIALISATION

chose = [] # une liste vide


trucMuch = [2]*4 # [2, 2, 2,
2]
range(5) # crée la liste [0, 1, 2, 3 , 4]
range(5,8) # crée la liste [5, 6, 7]
range(2, 11, 2) # crée la liste [2, 4, 6, 8, 10]

chose = range(7) # [0, 1, 2, 3 , 4, 5, 6]

print 3 in True

chose #
CODE SOURCE : LES LISTES, LE
DÉCOUPAGE "SLICING"

Pour insérer ou supprimer des éléments, le membre de gauche doit


obligatoirement indiquer une tranche,
Le membre de droite doit aussi être une liste
bois = ['chêne', 'acacia', 'peuplier']
bois[2:2] = ['platane'] # insertion en 3iéme position
bois[4:4] = ['bouleau'] # insertion en 5iéme
print bois # ['chêne', 'acacia',
position
'platane', 'peuplier', 'bouleau']
bois[2:4] = [] # effacement par liste vide
print bois # ['chêne', 'acacia', 'bouleau']
bois[1:3] = ['sapin']
print bois # ['chêne', 'sapin']
bois[1:] = ['châtaigné', 'pommier',
'poirier']
print bois # ['chêne', 'châtaigné',
'pommier', poirier']
QUIZ TIME
http://www.quiz-maker.com/Q62IIF35L
CODE SOURCE : LES
TUPLES

Un tuple est une collection hétérogène d'éléments ordonnés et


immuable séparés par une virgule et entourée de parenthèses

unTuple = ('chêne', 15, ["plaine", 1200])

•Un tuple s'utilise comme une liste, mais son parcours est plus
rapide
•Généralement on utilise le tuple pour définir des constantes
•Un tuple n'est pas modifiable
CODE SOURCE : LES
DICTIONNAIRES

Un dictionnaire est un couple clef : valeur entouré d'accolades


dico= {} # dictionnaire vide

dico['un'] = 'one'
dico['deux'] = 'two'
dico['trois'] = 'three'
print dico # {'un':'one', 'trois':'three', 'deux':'two'}
print dico['un'] # 'one'
del dico['un']
print dico # {'trois':'three', 'deux':'two'}
dico['quatre'] = 'four'
print dico # {'quatre': 'four', 'trois': 'three',
'deux': 'two'}
CODE SOURCE : LES DICTIONNAIRES,
LES MÉTHODES

Les méthodes suivantes sont spécifiques aux dictionnaires :

dico.keys() # ['quatre', 'trois', 'deux']


dico.values() # ['four', 'three', 'two']
dico.iterkeys() # itérateur sur les clefs
dico.itervalues() # itérateur sur les valeurs associées
dico.iteritems() # itérateur clef, valeur
[('quatre','four'), ('trois','three'), ('deux','two')]
dico.has_key('un') # False
dico.has_key('quatre') # True

•Les dictionnaires ne sont pas


ordonnés
•On ne peut donc pas les indicer
CODE SOURCE : LES DICTIONNAIRES,
LES ITÉRATEURS

Les itérateurs sont des objets spécifiques permettant de parcourir


un dictionnaire :

for key in dico.iterkeys() :


print key # 'quatre' 'trois' 'deux'

for value in dico.itervalues() :


print value # 'four' 'three' 'two'

for keyValue in dico.iteritems()


print keyValue # ('quatre','four'),
('trois','three'), ('deux','two')
CODE SOURCE : LES
ENSEMBLES

Les ensembles sont gérés par la fonction set() :

x = set ('abcd')
y = set('bdx')

•Les
opérations :

'c' in x # True : appartenance


x – y # set(['a', 'c']) : différence
x | y # set(['a', 'c', 'b', 'd', 'x']) : union
x & y # set(['b', 'd']) : intersection
EXERCICE
C’est quoi l’output de ces C’est quoi l’output de ces
variables ? variables ?
X = 5.2 w = 12010
Print(type(x)) Print(type(w))

Z = ‘hello’ a = [‘hello’, ‘world’, 2]


Print(type(z)) Print(type(a))
EXERCICE
* Déclarer une liste d’élèves (nom et prénom et âge), puis faire l’affichage de
ces listes
Il faut convertir les noms des élèves en majuscules,
* Remplacer la lettre J par H:
Txt = ‘Jello World !’
* Compléter:
Age = 25
Txt = ‘My age is {} ‘
Print(txt.format(age))
* Déclarer une liste de notes d’un élève, faire l’affichage, somme, min et max
des notes
QUIZ TIME
http://www.quiz-maker.com/QZI065ZZE
LES STRUCTURES
ITÉRATIVES: IF … ELSE,
WHILE, FOR
CODE SOURCE : IF … [ELIF]
… [ELSE]

Contrôler une alternative

if x < 0 :
print "x est négatif"
elif x % 2 :
print "x est positif et pair"
else :
print "x n'est ni négatif ni pair"

# pour un booléen
if x : # 'if s is True' ou 'if x ==
True'
CODE SOURCE : WHILE
… [ELSE]

Répéter du code

cpt = 0
while x > 0 :
x = x // 2 # division avec troncature
cpt += 1
print "l'approximation de log2(x) est %d" % (cpt)

n = input('Entrez un entier [1..10] :


') while (n < 1) or (n > 10) :
n = input('Entrez un entier
[1..10] S.V.P. : ')
CODE SOURCE : FOR…
[ELSE]

Parcourir une séquence

for c in 'Hello' :
print c, # H e l l o

for x in [1, 'H', 5.269] :


print x, # 1 H
5.269

for x in xrange(5) :
print x, # 0 1 2 3 4
QUIZ TIME
http://www.quiz-maker.com/Q7YWWXWOS
EXERCICE
1/ On vérifie la note de l’éléve si elle est supérieure a 10 donc on
affiche ‘Admis’ sinon on affiche ‘redouble’,
2/ On déclare une liste de prix des maisons, si le prix est supérieur
a 500 000 dt on affiche ‘Expensive ’, sinon on affiche ‘Cheap’.
3/ On déclare une liste d'âge, si l'âge est supérieur a 18 ans, on
affiche ‘majeur’ si l'âge = 18 ans on affiche ‘vous venez juste
d’atteindre la majorité’, sinon on affiche ‘mineur’.
4/ Si le prix de la maison > 500 000dt, on rajoute la TVA au prix =
5000 dt sinon on rajoute TVA = 1000 dt. Par exemple: prix de la
maison = 600 000 + TVA (5000) => le prix final = 605 000 dt.
LES FONCTIONS
* Les fonctions prédéfinis
* Les fonctions
LES FONCTIONS PRÉDÉFINIS
EN PYTHON
Python possède une série de fonctions prédéfinies afin de réaliser les fonctions les plus
courantes.
Par exemple :
• print()
• input()
• min(), max()
• sorted()
• len()
• range()
• ...
Toutes ces fonctions peuvent êtres appelées directement depuis Python sans import de modules
préalables. Elles sont chargées au démarrage de Python.
IMPORTATION DES
FONCTIONS
from math import sqrt, sin

print('Racine carrée de 2 =', sqrt(2))


print('Sinus de 2 = ', sin(2))

//Ou bien importer toutes les fonctions du module math:


from math import *
CODE SOURCE : FONCTIONS,
DÉCLARATION
•Une fonction est un groupe d'instructions regroupé sous un nom
et s'exécutant à la demande

def nomDeLaFontion(<paramétres>) :
<blocInstructions>

•le <blocInstruction> est obligatoire, s'il ne fait rien on doit utiliser


l'instruction pass

def carre(x) :
return x*x

print carre(4) # 16 : appel de la fonction carre


EXERCICE
1/ Déclarer une liste de notes des élèves, calculer la moyenne de
chaque élève, la somme de ces notes et afficher la meilleure note,
2/ Déclarer une liste de prix des maisons et afficher la maison la
plus chère
3/defExécution d’une fonction:
my_function():
print("Hello from a function")

4/ Afficher le 1er argument:


def my_function(fname, lname):
print( …… )
MANIPULATION DES
FICHIERS
CODE SOURCE : MANIPULATION
DES FICHIERS
•Le type fichier est connu du langage Python
•Par défaut les fichiers sont ouverts en mode texte
•Il faut préciser l'attribut 'b' pour traiter le fichier en mode binaire

f1 = open("monFichier", 'r') # ouverture en lecture


f2 = open("monFichier", 'w') # ouverture en écriture
f3 = open("monFichier", 'a') # ouverture en ajout
f4 = open("monFichier", 'br') # ouverture en lecture binaire

f1.close() # fermeture du fichier


CODE SOURCE : MANIPULATION DES
FICHIERS, ÉCRITURE
•Les méthodes d'écritures

f1 = open("monFichier", 'w')
s1 = 'foo'
f1.write(s) # on écrit la chaîne s1 dans f1
l1 = ["x", "y", "z"]
f1.writlines(l1) # on écrit les chaînes de l1
dans f1

print >> f1, "ajout de la chaîne" # écrit dans


f1 en mode ajout
f1.close() # fermeture du fichier
CODE SOURCE : MANIPULATION DES
FICHIERS, LECTURE
•Les méthodes de lecture

f1 = open("monFichier", 'r')
s = f1.read() # lit tous le fichier
s = f1.read(n) # lit au plus n octets
s = f1.readline() # lit la ligne
suivante
s = f1.readlines() # lit toutes les lignes sous forme d'une
liste
# lecture et affichage des lignes d'un fichier
for s in f1 :
print s

f1.close() # fermeture du fichier


CODE SOURCE : MANIPULATION DES
FICHIERS, SUPPRESSION

•Les méthodes de suppression

• Exemple 1:
import os
os.remove("demofile.txt")
• Exemple 2:
import os
if os.path.exists("demofile.txt"):
os.remove("demofile.txt")
else:
print("The file does not exist")
LES MODULES
CODE SOURCE : LES
MODULES
•Un module est un fichier indépendant qui permet de créer des
bibliothèques de fonctions ou de classes

•Le fait de créer des modules permet :


 La réutilisation du code
 la réalisation de services et de données partagés
 d'effectuer la partition de l'espace de noms
 la documentation et les tests peuvent être intégrés aux
modules.
CODE SOURCE : LES
MODULES, IMPORT
•Il existe deux méthodes pour effectuer l'importation d'un module
dans un programme

 import <nomDeModule> qui effectue l'importation de la


totalité des objets du module

import wx

from <nomDeModule> import obj1, … qui effectue


l'importation des objets spécifiés du module

from math import pi, sin, cos


NUMPY
import numpy as np

arr = np.array([1, 2, 3, 4, 5])

print(arr)

print(type(arr))
PANDAS
*1/ Exemple:
import pandas as pd

df = pd.read_csv('data.csv')

print(df.to_string())
*2/ Exemple:
import pandas as pd

data = {
"calories": [420, 380, 390],
"duration": [50, 40, 45]
}

#load data into a DataFrame object:


df = pd.DataFrame(data)

print(df)
MATPLOTLIB
import matplotlib.pyplot as p import matplotlib.pyplot as p
lt lt
import numpy as np import numpy as np

xpoints = np.array([0, 6]) ypoints =


ypoints = np.array([0, 250]) np.array([3, 8, 1, 10, 5, 7])

plt.plot(xpoints, ypoints) plt.plot(ypoints)


plt.show() plt.show()
MANIPULATION DE BASE DE
DONNÉES
PYMONGO
* MongoDB stores data in JSON-like documents, which makes the
database very flexible and scalable.
* Python needs a MongoDB driver to access the MongoDB
database.

pip install pymongo


CRÉATION DE BASE DE
DONNÉES
import pymongo

myclient = pymongo.MongoClient("mongodb://localhost:27017/")

mydb = myclient["mydatabase"]
//Affichage de la liste des BD:
print(myclient.list_database_names())
//Vérifier si ma BD existe !
dblist = myclient.list_database_names()
if "mydatabase" in dblist:
print("The database exists.")
CRÉATION D’UNE
COLLECTION
A collection in MongoDB is the same as a table in SQL databases.
import pymongo

myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]

mycol = mydb["customers"]
//Afficher la liste des collections
print(mydb.list_collection_names())
//Vérifier si ma collection existe
collist = mydb.list_collection_names()
if "customers" in collist:
print("The collection exists.")
INSERT INTO COLLECTION
import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

mydict = { "name": "John", "address": "Highway 37" }

x = mycol.insert_one(mydict)
INSERT MULTIPLE
DOCUMENTS
import pymongo

myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

mylist = [
{ "name": "Amy", "address": "Apple st 652"},
{ "name": "Hannah", "address": "Mountain 21"},
{ "name": "Michael", "address": "Valley 345"},
{ "name": "Sandy", "address": "Ocean blvd 2"},
{ "name": "Betty", "address": "Green Grass 1"},
{ "name": "Richard", "address": "Sky st 331"},
{ "name": "Susan", "address": "One way 98"},
{ "name": "Vicky", "address": "Yellow Garden 2"},
{ "name": "Ben", "address": "Park Lane 38"},
{ "name": "William", "address": "Central st 954"},
{ "name": "Chuck", "address": "Main Road 989"},
{ "name": "Viola", "address": "Sideway 1633"}
]

x = mycol.insert_many(mylist)

#print list of the _id values of the inserted documents:


print(x.inserted_ids)
FIND ONE
import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

x = mycol.find_one()

print(x)
FIND ALL
import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

for x in mycol.find():
print(x)
FIND ONLY SOME FIELDS
import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

for x in mycol.find({},
{ "_id": 0, "name": 1, "address": 1 }):
print(x)
FILTER THE RESULT
import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

myquery = { "address": "Park Lane 38" }

mydoc = mycol.find(myquery)

for x in mydoc:
print(x)
DELETE DOCUMENTS
//Delete the documents with the adress « Mountain 21 »
import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

myquery = { "address": "Mountain 21" }

mycol.delete_one(myquery)
DELETE ALL DOCUMENTS WERE THE ADDRESS
STARTS WITH THE LETTER S:

import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

myquery = { "address": {"$regex": "^S"} }

x = mycol.delete_many(myquery)

print(x.deleted_count, " documents deleted.")


DELETE ALL DOCUMENTS IN
A COLLECTION
import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

x = mycol.delete_many({})

print(x.deleted_count, " documents deleted.")


DROP COLLECTION
import pymongo

myclient =
pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

mycol.drop()
WEB SCRAPING
C’EST QUOI WEB
SCRAPING ?
La collecte automatisée de données à partir d’Internet est presque
aussi ancienne qu’Internet lui-même. Bien que le web scraping ne soit
pas un terme nouveau, dans les années passées, la pratique a été
plus communément appelé capture d’écran, exploration de données,
collecte de sites Web ou similaire Variations.
En théorie, le web scraping est la pratique consistant à collecter des
données depuis différents sources de données. C’est le plus souvent
accompli en écrivant un programme automatisé qui interroge un
serveur Web, demande des données (généralement sous forme de
fichiers HTML et autres qui composent des pages Web), puis analyse
ces données pour extraire les informations nécessaires.
En pratique, le web scraping englobe une grande variété de
technologies et des techniques de programmation.
WEB SCRAPING
POURQUOI WEB SCRAPING ?
Le besoin d'extraire des données du site Web augmente. Lorsque
nous menons des projets liés aux données tels que la surveillance
des prix, l'analyse commerciale ou l'agrégateur de nouvelles, nous
aurions toujours besoin d'enregistrer les données du site Web.
Cependant, copier et coller des données ligne par ligne est
obsolète.
USE CASES
1. Lead generation for marketing
2. Comparateur de prix
3. E-commerce
4. Data analysis
5. Recherche académique
SOURCE DE DONNÉES
ÉTAPES
TOP TOOLS & LIBRAIRIES

1. BeautifulSoup
2. Requests
3. Urlib
4. Scrapy
5. Selenium
6. Mechanize
SYNTAXE
EXERCICE
1. Scraping du site web:
Tunisie Annonce :: Immobilier Tunisie TN - petites annonces gratuite
s location vente terrain voiture auto moto emploi immobilier BIZ (tu
nisie-annonce.com
)
2. Scraping text from image
3. Scraping data from PDF file
4. Scraping data from indeed.com
5. Scraping data from Facebook groupes & pages
NETTOYAGE DE DONNÉES
C’EST QUOI ?
Le Data Cleaning (nettoyage de données) est l’étape la plus
importante avant d’analyser ou modéliser des données mais elle
peut-être très fastidieuse.

les données qui ont été collectées pour analyse sont nettoyées pour
en extraire les informations pertinentes. Le processus de suppression
du type de données incorrectes, incomplètes ou en double et
susceptibles d'affecter les résultats finaux de l'analyse est appelé
nettoyage des données.

Les data scientistes consacrent jusqu’à 80% de votre temps à


nettoyer les données.
AVANTAGES DE DATA
CLEANING
CYCLE
TOOLS ?
•NumPy •Scrubadub
•Pandas •Missingno
•Matplotlib •Tabulate
•Datacleaner •Modin
•Dora •SciPy
•Seaborn •Ftfy
•Arrow •Dabl
DATA VIZ
Le Data Viz (visualisation de données) est une étape importante qui
sert a visualiser nos données durant chaque étape.

Elle nous aide a bien comprendre nos données durant les


différentes étapes du cycle du projet data science.
Top modules python: Seaborn & Matplotlib.
EXERCICE
• Scraping des publications d’une page Facebook
•Exploration de données
•Nettoyage de données
•DataViz
THANK YOU !

Vous aimerez peut-être aussi