Pandas : Comment obtenir l’index de colonne à partir du nom de la colonne
Vous pouvez utiliser les méthodes suivantes pour obtenir la valeur d’index de colonne à partir d’un nom de colonne dans pandas :
Méthode 1 : obtenir l’index de colonne pour un nom de colonne
df.columns.get_loc('this_column')
Méthode 2 : obtenir l’index de colonne pour plusieurs noms de colonnes
cols = ['this_column', 'that_column'] [df.columns.get_loc(c) for c in cols if c in df]
Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le DataFrame pandas suivant :
import pandas as pd #create DataFrame df = pd.DataFrame({'store': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], 'sales': [18, 10, 14, 13, 19, 24, 25, 29], 'returns': [1, 2, 2, 3, 2, 3, 5, 4], 'recalls': [0, 0, 2, 1, 1, 2, 0, 1]}) #view DataFrame print(df) store sales returns recalls 0 A 18 1 0 1 A 10 2 0 2 A 14 2 2 3 A 13 3 1 4 B 19 2 1 5 B 24 3 2 6 B 25 5 0 7 B 29 4 1
Exemple 1 : obtenir l’index de colonne pour un nom de colonne
Le code suivant montre comment obtenir la valeur d’index de colonne pour la colonne portant le nom « returns » :
#get column index for column with the name 'returns' df.columns.get_loc('returns') 2
La colonne portant le nom « return » a une valeur d’index de colonne de 2 .
Remarque : les valeurs d’index de colonne commencent à 0 en Python. Ainsi, puisque « return » est la troisième colonne du DataFrame, sa valeur d’index est de 2.
Exemple 2 : obtenir l’index de colonne pour plusieurs noms de colonnes
Le code suivant montre comment obtenir la valeur d’index de colonne pour plusieurs colonnes du DataFrame :
#define list of columns to get index for cols = ['store', 'returns', 'recalls'] #get column index for each column in list [df.columns.get_loc(c) for c in cols if c in df] [0, 2, 3]
À partir du résultat, nous pouvons voir :
- La colonne portant le nom « store » a une valeur d’index de colonne de 0 .
- La colonne portant le nom « return » a une valeur d’index de colonne de 2 .
- La colonne portant le nom « rappels » a une valeur d’index de colonne de 3 .
Remarque : Vous pouvez trouver la documentation complète de la fonction pandas get_loc() ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :
Comment obtenir la valeur d’une cellule à partir de Pandas DataFrame
Comment renommer l’index dans Pandas DataFrame
Comment trier les colonnes par nom dans Pandas