Académique Documents
Professionnel Documents
Culture Documents
Introduction
NumPy
Création d’un vecteur
Extraction des valeurs d’un vecteur
Calculs sur les vecteurs
Création d’une matrice
Extraction des valeurs de matrices
Itérations
Calculs sur les matrices
Calcul matriciel
Pandas
Series
DataFrame
Matplotlib
Data Analysis
Data Analysis
Data Analysis
Data Analysis
Data Analysis
Data Analysis
Data Analysis
#liste de valeurs
lst = [1.2,3.1,4.5]
print(type(lst)) → ≺ class‘list ′ ≻
#conversion à partir d’une liste
a = np.asarray(lst,dtype=float)
print(type(a)) → ≺ class‘numpy .ndarray ′ ≻
print(a) → [1.2 3.1 4.5]
Data Analysis
Data Analysis
Data Analysis
#on peut exploiter cette idée pour inverser un vecteur – ou bien utiliser
flip()
print(v[::-1]) #ou new v=np.flip(v) → [6.3, 8.5, 4.2, 7.4, 1.2]
Data Analysis
Data Analysis
#valeurs distinctes
a = np.array([1,2,2,1,1,2])
print(np.unique(a))→ [1 2]
Data Analysis
Data Analysis
#médiane
print(np.median(v)) → 6.3
#variance
print(np.var(v)) → 6.6856
#quantile
print(np.percentile(v,50)) → 6.3 (50% = médiane)
#somme
print(np.sum(v)) → 27.6
#somme cumulée
print(np.cumsum(v)) → [1.2 8.6 12.8 21.3 27.6]
Data Analysis
#produit scalaire
z = np.vdot(x,y)
print(z) → 4.86
Principe: Des fonctions
#ou l’équivalent calculé
spécifiquement matricielles
print(np.sum(x*y)) → 4.86
existent, certaines
s’appliquent à des vecteurs
#norme d’un vecteur
n = np.linalg.norm(x)
print(n) → 2.03
#opérations ensemblistes
x = np.array([1,2,5,6])
y = np.array([2,1,7,4])
Data Analysis
Data Analysis
Data Analysis
Data Analysis
#print de l’ensemble
print(a)
Data Analysis
#plus généralement
a = np.full(shape=(2,4),fill value=0.1)
print(a)
Data Analysis
#matrice de valeurs
a = np.array([[1.2,2.5],[3.2,1.8],[1.1,4.3]])
Accoler le
#ajouter une ligne – marche pour la concaténation de ma-
vecteur b en
trices
tant que
nouvelle ligne b = np.array([[4.1,2.6]])
(axis = 0) de c = np.append(a,b,axis=0)
la matrice a print(c)
Accoler le
vecteur d en #ajouter une colonne
tant que d=
nouvelle np.array([[7.8],[6.1],[5.4]])
colonne (axis print(np.append(a,d,axis=1))
= 1) de la
matrice a
Data Analysis
Insertion de b
en tant que #insertion
nouvelle ligne print(np.insert(a,1,b,axis=0))
(axis = 0) à la
position n°1
Suppression de #suppression
la ligne (axis print(np.delete(a,1,axis=0))
= 0) via son
indice (n°1)
#modifier la dimension
d’une matrice existante
#parcourt les données lignes
par ligne
Redimensionnement h =
d’une matrice np.resize(a,new shape=(2,3))
print(h)
Data Analysis
Data Analysis
v = np.array([[1.2,2.5],[3.2,1.8],[1.1,4.3]])
#autre solution pour affichage de toutes les valeurs, noter le rôle des :
print(v[:,:])
Data Analysis
Data Analysis
Data Analysis
Data Analysis
Data Analysis
#boucles indicées
s = 0.0
for i in range(0,v.shape[0]):
for j in range(0,v.shape[1]):
print(v[i,j])
s = s + v[i,j]
print(”Somme = ”,s)
Data Analysis
Data Analysis
Data Analysis
Data Analysis
Data Analysis
#transposition
print(np.transpose(x))
#multiplication
print(np.dot(x,y))
#déterminant
print(np.linalg.det(y)) → 4.21
#inversion
print(np.linalg.inv(y))
Data Analysis
#résolution d’équation
z = np.array([1.7,1.0])
print(np.linalg.solve(y,z)) → [0.8195 -0.0261]
#vérification
print(np.dot(np.linalg.inv(y),z)) → [0.8195 -0.0261]
Data Analysis
Data Analysis
• C’est l’une des bibliothèques les plus importantes pour lire les
données, les traiter et créer ses propres graphiques
• Les principales structures de données dans Pandas sont
implémentées avec les classes Series et DataFrame.
• series: est un tableau indexé à 1 dimension d’un type de données
fixe.
• DataFrame: est une structure de données à 2 dimensions - une table
- où chaque colonne contient des données du même type. Vous
pouvez le voir comme un dictionnaire d’instances de Series.
• Les DataFrames sont parfaits pour représenter des données réelles :
les lignes correspondent aux instances (exemples, observations, etc.)
et les colonnes correspondent aux attributs (features) de ces
instances.
Data Analysis
Data Analysis
• Un objet série peut être créé à partir d’une liste ou d’un tableau de
valeurs (array) ou à partir d’un dictionnaire avec des paires
clé-valeur.
• pd.Series( ): est la méthode utilisée pour créer des séries. Elle peut
prendre une liste, un tableau ou un dictionnaire comme paramètre.
Data Analysis
s2 = pd.Series([80,93,78,85,97],
Créer une série à partir d’une liste index=[’English’,’Science’,’Social’,
’Tamil’,’Maths’])
s1 = pd.Series([10,20,30,40,50])
print(”Les notes obtenues par
print(”Les valeurs de la série sont:”,
l’étudiant sont:”, s2)
s1.values)
print(”Les valeurs d’indices sont:”, ⇓
s1.index.values)
Les notes obtenues par l’étudiant
⇓ sont:
English 80
Les valeurs de série sont:
Science 93
[10 20 30 40 50]
Social 78
Les valeurs d’indices sont: [0 1 2 3 4]
Tamil 85
Maths 97
Name: Student Marks, dtype: int64
Data Analysis
Data Analysis
Data Analysis
Data Analysis
Data Analysis
• Voici quelques méthodes pour lire des données dans une trame de
données (DataFrame) à partir d’autres objets de fichier:
• read table( )
• read csv( )
• read html( )
• read json( )
Data Analysis
Objectif:
Nous allons démontrer les principales méthodes en analysant un dataset
(jeu de données) de films: IMDB-Movie-Data
(lien datset: https://www.kaggle.com/PromptCloudHQ/imdb-data).
Data Analysis
Data Analysis
Data Analysis
data.columns
⇓
Index([’Rank’, ’Title’, ’Genre’, ’Description’, ’Director’, ’Actors’, ’Year’,
’Runtime (Minutes)’, ’Rating’, ’Votes’, ’Revenue (Millions)’, ’Metascore’],
dtype=’object’)
Data Analysis
data.info()
⇓
Data Analysis
data.describe()
Data Analysis
Data Analysis
Data Analysis
loc et iloc sont deux fonctions qui peuvent être utilisées pour découper
des données à partir d’index de lignes spécifiques.
loc : localise les lignes par nom
• loc effectue un index explicite basé sur le découpage.
• Il faut des index de chaı̂ne pour récupérer les données des lignes
spécifiées
data indexed.loc[ [’Suicide Squad’] ] [ [’Genre’,’Actors’,’Director’,
’Rating’,’Revenue (Millions)’] ]
iloc: localise les lignes par index entier
• iloc effectue un découpage en fonction de l’index numérique par
défaut de Python.
#Ici, iloc est utilisé pour découper les données à l’aide d’index entiers
data.iloc[10:15] [ [’Title’,’Rating’,’Revenue (Millions)’] ]
Data Analysis
Data Analysis
Data Analysis
Opération Groupby :
Director Rating
Aamir Khan 8.5
Abdellatif Kechiche 7.8
Adam Leon 6.5
Adam McKay 7.0
Adam Shankman 6.3
Data Analysis
La méthode sort values( ) est utilisé pour effectuer une opération de tri
sur une colonne ou une liste de plusieurs colonnes.
Dans l’exemple ci-dessus, où nous avons répertorié le ”rating” moyen de
chaque ”director”, si nous voulons les trier de la plus élevée à la plus
basse, nous pouvons effectuer l’opération de sorting.
Data Analysis
Data Analysis
Nous pouvons imputer ces valeurs nulles avec mean Revenue (Millions).
fillna( ) : fonction utilisée pour remplir des valeurs nulles avec des valeurs
spécifiées
revenue mean = data indexed[’Revenue (Millions)’]mean()
print(”The mean revenue is: ”, revenue mean)
→ The mean revenue is: 82.95637614678897
Data Analysis
Data Analysis
Data Analysis
Data Analysis