Création & accès aux éléments

Pourquoi Pandas

Pandas est une librairie utilisée pour l’analyse de données structurées (ex: une feuille Excel, un fichier .csv). Pandas permet de charger les données, les pré-traiter, les analyser et créer des rapports. Tous les packages de machine learning et de visualisation de données prennent des objets Pandas en entrée (DataFrame et Series). Sous le capot, Pandas utilise Numpy.

Par convention, Pandas est importé sous le nom pd

import pandas as pd

Créer des objets Pandas

Pandas a deux grands types de structures: Series et DataFrame.

Series

DataFrame


Méthodes & attributs Numpy


Accès

Liste

Slicing

Plusieurs dimensions

Conditions & filtres

Comme pour Numpy, comparer un objet Pandas à une expression retourne un objet de booléens. On peut ensuite filtrer les objets avec les valeurs booléennes.

df = pd.DataFrame({
  'Product A' : np.arange(1,10),
  'Product B' : np.arange(10,100,10)
})
print(df)
'''
   Product A  Product B
0          1         10
1          2         20
2          3         30
3          4         40
4          5         50
5          6         60
6          7         70
7          8         80
8          9         90
'''

# Condition
print(df % 3 == 0)
'''
   Product A  Product B
0      False      False
1      False      False
2       True       True
3      False      False
4      False      False
5       True       True
6      False      False
7      False      False
8       True       True
'''

# Filtre
print(df[df['Product A'] % 3 == 0])
'''
   Product A  Product B
2          3         30
5          6         60
8          9         90
'''

Résultat


Itérations

On peut itérer sur les lignes d’un DataFrame avec iterrows:

n = df.shape[0]

for index, row in df.iterrows():
    print('{0:d}/{1:d}'.format(index+1, n))
    download_content(row)

Pour mettre à jour une valeur du dataframe à l’intérieur de la boucle:

df.at[idx,'column'] = value

On peut itérer sur les valeurs d’un Series avec iteritems:

for index, val in df.iteritems():
    print(index, val)

Méthodes par type