Sélectionner plusieurs colonnes dans Pandas DataFrame

  1. Utilisation de la syntaxe __getitem__ ([]) pour sélectionner plusieurs colonnes
  2. Utilisation des méthodes iloc() et loc() pour sélectionner plusieurs colonnes dans Pandas

Nous pouvons rencontrer des problèmes lors de l’extraction des données de plusieurs colonnes d’une Pandas DataFrame, principalement parce qu’ils traitent la Dataframe comme un tableau à deux dimensions. Pour sélectionner plusieurs colonnes d’une DataFrame, nous pouvons utiliser soit la méthode d’indexation de base en passant la liste des noms de colonnes à la syntaxe getitem ([]), soit les méthodes iloc() et loc() fournies par la bibliothèque Pandas. Pour ce tutoriel, nous allons sélectionner plusieurs colonnes dans la DataFrame suivante.

Exemple de DataFrame :

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(4,4), columns = ['a','b','c','d'])

print(df)

Production :

          a         b         c         d
0  0.255086  0.282203  0.342223  0.263599
1  0.744271  0.591687  0.861554  0.871859
2  0.420066  0.713664  0.770193  0.207427
3  0.014447  0.352515  0.535801  0.119759

Utilisation de la syntaxe __getitem__ ([]) pour sélectionner plusieurs colonnes

En stockant les noms des colonnes à extraire dans une liste et en la passant ensuite au [], nous pouvons sélectionner plusieurs colonnes dans le DataFrame. Le code suivant explique comment nous pouvons sélectionner les colonnes a et c dans le DataFrame affiché précédemment.

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(4,4), columns = ['a','b','c','d'])

print(df[['a','c']])

Production :

          a         c
0  0.255086  0.342223
1  0.744271  0.861554
2  0.420066  0.770193
3  0.014447  0.535801

Utilisation des méthodes iloc() et loc() pour sélectionner plusieurs colonnes dans Pandas

Nous pouvons également utiliser les méthodes iloc() et loc() pour sélectionner plusieurs colonnes.

Lorsque nous voulons utiliser les index des colonnes pour les extraire, nous pouvons utiliser iloc() comme le montre l’exemple ci-dessous :

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(4,4), columns = ['a','b','c','d'])
print(df.iloc[:,[0,2]])

Production :

          a         c
0  0.255086  0.342223
1  0.744271  0.861554
2  0.420066  0.770193
3  0.014447  0.535801

De même, nous pouvons utiliser loc() lorsque nous voulons sélectionner des colonnes en utilisant leurs noms comme indiqué ci-dessous :

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(4,4), columns = ['a','b','c','d'])

print(df.loc[:,['a','c']])

Production :

          a         c
0  0.255086  0.342223
1  0.744271  0.861554
2  0.420066  0.770193
3  0.014447  0.535801

Article connexe - Pandas DataFrame

  • Itération par les colonnes d'un DataFrame Pandas
  • Convertir Pandas Series en DataFrame