Cours Pandas PDF
Document Details
Uploaded by UnequivocalAllegory7691
Mme Lamia Mansouri
Tags
Summary
Ce document présente un cours sur le module Pandas en Python. Il explique la manipulation de données avec les pandas, ainsi que la création de Series et de DataFrames.
Full Transcript
Chap PYTHON 11 Le module Pandas Enseignante: Mme Lamia MANSOURI 1 1. introduction Pandas est une librairie python qui permet de manipuler...
Chap PYTHON 11 Le module Pandas Enseignante: Mme Lamia MANSOURI 1 1. introduction Pandas est une librairie python qui permet de manipuler Un DataFrame est composé des facilement des données à analyser : éléments suivants: l’indice de la ligne ; ▪ Manipuler des tableaux de données avec des étiquettes de le nom de la colonne ; variables (colonnes) et des lignes. la valeur de la donnée ; ▪ Ces tableaux sont appelés Series (données selon une Colonnes dimension), DataFrames (données selon deux dimension), Panels (3d) et multiIndex ( plus de 3d). ▪ On peut facilement lire et écrire ces dataframes à partir ou vers un fichier tabulé. Lignes ▪ Les tableaux Pandas peut avoir des types différents (numérique, string, boolean …). ▪ On peut tracer des graphes à partir de ces DataFrames grâce à matplotlib. Pour utiliser pandas : import pandas as pd Données 2 2. Les Séries Pandas 2.1 Création d’une série Création d'une série, c'est à dire d'un vecteur de valeurs d'une variable (en général valeurs pour différents individus) A partir d’une liste A partir d’un dictionnaire A partir d’un tableau Numpy Création d'une série avec valeur répétée : pandas.Series(0, index = range(5)) : série avec cinq 0. pandas.Series(0, range(5)) : série avec cinq 0. 3 2.2. Caractéristiques d’une série Exemple Fonction/Attribut Rôle Type(serie) Retourne le type de la structure serie.dtype Retourne le type d’éléments du tableau serie.ndim Retourne le nombre des dimensions du tableau serie.size Retourne le nombre d’éléments du tableau serie.shape Retourne le nombre des lignes et des colonnes du tableau 4 2.3. Accéder aux éléments d’une série Accès par numéro (origine à 0) Accès par index 5 3. Les DataFrames Pandas 3.1. Création d’un DataFrame Un dataframe se comporte comme un dictionnaire dont les clés sont les noms des colonnes et les valeurs sont des séries. Le nom des lignes est appelé index. Un index peut être une chaîne de caractères (un label) ou un nombre entier. Quand aucun index n'est spécifié à la création du dataframe, il est initialisé par défaut avec une suite continue d'entiers commençant par 0. A partir d’une liste A partir d’un dictionnaire import pandas as pd df = pd.DataFrame({'A': [1.1, 2.7, 5.3], 'B': [2,10,9], 'C': [3.3, 5.4, 1.5], 'D': [4,7,15]}, index = ['a1','a2','a3']) On peut aussi donner un dictionnaire dont les clefs seront les index plutôt que les colonnes : pd.DataFrame.from_dict({'A': [1.1, 2.7, 5.3], 'B': [2, 10, 9], 'C': [3.3, 5.4, 1.5], 'D': [4, 7, 15]}, orient = 'index') 6 A partir des séries Un index ou les colonnes d'un dataframe peuvent avoir un nom : ▪df.index.name = 'myIndexName' (si on imprime le frame dans un fichier csv avec l'index, la colonne sera nommée avec le nom de l'index). ▪df.columns.name = 'myColumnName’ df = pandas.DataFrame(columns = ['A', 'B']) : dataframe avec 0 lignes df = pandas.DataFrame(columns = ['A', 'B'], index = ['a', 'b']) : dataframe avec 2 lignes et que des NA df = pandas.DataFrame(0, index = [0, 1], columns = ['a', 'b']) : dataframe initialisé avec que des 0. 3.2. Caractéristiques d’un DataFrame Exemple Fonction/Attribut Rôle Type(df) Retourne le type de la structure df.ndim Retourne le nombre des dimensions du tableau df.size Retourne le nombre d’éléments du tableau df.shape Retourne le nombre des lignes et des colonnes du tableau 9 3.3. Accéder aux éléments d’un DataFrame Accès par numéro (origine à 0) Accès par index 10 3.4. Modification d’un DataFrame Modifier les valeurs d’un DF Insérer une colonne 11 Ajouter/supprimer une ligne Ajouter/supprimer une colonne 12 3.6. Tri d’une DataFrame Tri selon les étiquettes Tri selon les valeurs 13 3.7. Opérations sur les DataFrames Opérations arithmétiques Opérations de comparaisons Opérations logiques 14 Parcourir un dataframe Quand on boucle sur un dataframe, on boucle sur les noms des colonnes : for x in df: print(x) # imprime le nom de la colonne On peut boucler sur les lignes d'un dataframe, chaque ligne se comportant comme un namedtuple : for x in df.itertuples(): print(x.A) # Imprime la valeur courante de la colonne A de df 3.8. Fonctions sur les DataFrames Fonction Description df.mean(axis=None, skipna=None, Retourne la moyenne des valeurs pour l’axe demandé. …) axis=0 par défaut (Renvoie la moyenne de chaque colonne) Skipna=True par défaut (Exclure les valeurs NA / null lors du calcul du résultat). df.sum(axis=None, skipna=None, …) Retourne la somme des valeurs pour l’axe demandé. df.prod(axis=None, skipna=None, …) Retourne le produit des valeurs pour l’axe demandé. df.min(axis=None, skipna=None, …) Retourne le minimum des valeurs pour l’axe demandé. df.var(axis=None, skipna=None, …) Retourne la variance des valeurs pour l’axe demandé. df.std(axis=None, skipna=None, …) Retourne l’écart-type des valeurs pour l’axe demandé. df.median(axis=None, skipna=None, Retourne la médian des valeurs pour l’axe demandé. …) df.count(axis=None, …) Compter les cellules non-NA pour chaque colonne ou ligne. df.describe() Afficher un sommaire statistiques des données numériques df.head(), df.tail() Afficher les 5 premières ou les 5 dernières. df.head(n), df.tail(n) Afficher les n premières ou les n dernières. 16 4. Accès aux fichiers Fonction Description pd.read_csv(filepath_or_buffer, sep, delimiter, Lecture d’une DataFrame à partir d’un fichier csv. header, names, index_col, …) filepath_or_buffer (Exemple: "/nomFichier.csv" ) sep=',' par défaut. delimiter=None par défaut(Alias pour sep). header=0 par défaut (Numéro(s) de lignes à utiliser comme noms de colonnes et au début des données). names (Liste des noms de colonnes à utiliser) index_col(utiliser comme libellé de ligne du DataFrame) pd.read_excel(nomfich, sheetname=" …", Lecture d’une DataFrame à partir d’un fichier excel. header=, names,..) Exemple : df = pd.read_excel("COVID-19.xlsx") NB: installer xlrd qui est une bibliothèque de lecture (entrée) de fichiers Excel (.xlsx,.xls) en Python. pd.read_sql(sql, con, index_col, … ) Lecture d’une DataFrame à partir d’un fichier sql. df.to_csv(path_or_buf=None, sep=',' …) Ecrire un objet dans un fichier csv. df.to_excel(excel_writer, sheet_name='Sheet1’,.. ) Ecrire un objet dans un fichier excel. utilise la bibliothèque xlwt et openpyxl en interne: xlwt est utilisé pour écrire.xls fichiers (formats jusqu’à Excel2003) openpyxl est utilisé pour écrire.xlsx (Excel2007 ou formats ultérieurs). df.to_sql(name, con, schema=None, …) Ecrire un objet dans un fichier sql. 17