Geekflare est soutenu par son public. Nous pouvons percevoir des commissions d'affiliation sur les liens d'achat présents sur ce site.
En Développement Dernière mise à jour : 16 septembre 2023
Partager sur :
Invicti Web Application Security Scanner - la seule solution qui offre une vérification automatique des vulnérabilités avec Proof-Based Scanning™.

Cet article est un guide sur la façon de renommer des colonnes dans Pandas.

Pandas est une bibliothèque Python permettant de traiter des ensembles de données. Elle lit facilement les données à partir de différents formats de fichiers tels que CSVJSON et SQL. Lorsque les données sont chargées dans Pandas, elles sont stockées dans un objet DataFrame.

Un DataFrame est un objet bidimensionnel, ce qui signifie que les données sont stockées dans un format de type tableau avec des lignes et des colonnes. Ce format est similaire au stockage de données dans des fichiers CSV ou des feuilles de calcul. Lorsque vous chargez des données, pandas tente de charger les noms de colonnes à partir du fichier source du jeu de données.

colonnes

Toutefois, les noms des colonnes chargées peuvent ne pas être idéaux et vous pouvez les renommer de manière plus significative.

Dans cet article, nous allons d'abord discuter des meilleures pratiques pour nommer les colonnes dans Pandas. Ensuite, nous aborderons le sujet principal, à savoir les méthodes pour les renommer.

Meilleures pratiques pour nommer les colonnes dans Pandas

Avant d'aborder la partie de cet article consacrée au guide de renommage, voici quelques bonnes pratiques et conventions à suivre pour nommer vos colonnes dans pandas.

✅ Utilisez des noms descriptifs. Les noms cryptiques tels que col_1 sont difficiles à comprendre et ne donnent pas beaucoup d'informations sur les données contenues dans l'ensemble de données.

✅ Utilisez la casse serpent pour nommer les colonnes. Dans ce cas, les noms de vos colonnes ressembleront à ceci : number_of_people Au lieu de cela NumberOfPeople.

✅ Bien que le cas du serpent soit préférable, vous devriez utiliser la convention de nommage que votre jeu de données original utilise. Cela évite toute confusion lorsque vous passez de votre jeu de données à l'objet DataFrame de Pandas.

Quelle que soit la convention de dénomination que vous utilisez, restez cohérent dans l'ensemble du jeu de données. Évitez de nommer certaines colonnes en utilisant PascalCase et d'autres en utilisant snake_case.

Enfin, essayez d'utiliser des noms plus courts. Ils sont plus faciles à taper car la suggestion de code et la complétion dans les carnets sont généralement médiocres. Cela signifie que le codage dans un carnet nécessite beaucoup de saisie manuelle du code, et des noms plus courts facilitent la vie.

Comment renommer des colonnes dans Pandas

Vous pouvez consommer le contenu de cet article de deux manières. Tout d'abord, vous pouvez vous contenter de lire cet article comme référence. Deuxièmement, vous pouvez le suivre, codification afin d'avoir une meilleure chance de mémoriser les concepts abordés. Je recommande cette dernière méthode.

Pour coder, j'utiliserai un carnet de notes hébergé par Google Colab. Vous pouvez également en créer un et le suivre ; c'est totalement gratuit. Le carnet de notes contenant tout le code que j'écrirai dans ce tutoriel est disponible à l'adresse suivante ici.

Configuration de l'ordinateur portable

Avant de commencer à renommer des colonnes dans pandas, configurons le bloc-notes et chargeons quelques données d'exemple. Créez une cellule de code et importez pandas en utilisant le code ci-dessous.

import pandas as pd

Après avoir importé pandas, vous pouvez charger le fichier california_housing_data qui est disponible par défaut en tant qu'échantillon lorsque vous créez un carnet de notes Google Colab.

housing_data = pd.read_csv('/content/sample_data/california_housing_train.csv')

Vous pouvez voir les premières lignes de l'ensemble de données à l'aide du code :

housing_data.head()

Vous pouvez également dresser la liste des colonnes présentes dans l'ensemble de données à l'aide de la commande suivante :

housing_data.columns

Cette opération devrait produire le résultat suivant :

Index(['longitude', 'latitude', 'housing_median_age', 'total_rooms',
       'total_bedrooms', 'population', 'households', 'median_income',
       'median_house_value'],
      dtype='object')

Cela signifie que vos données ont été chargées correctement et que le DataFrame contient ce dont nous avons besoin.

Méthode 1 : Utilisation de la fonction Renommer

La façon la plus simple de renommer des colonnes dans pandas est d'utiliser la fonction rename de l'objet DataFrame. En utilisant cette méthode, vous rename une colonne en appelant la méthode rename. La méthode prend en compte plusieurs arguments.

Dans le cas présent, nous souhaitons renommer une colonne, c'est pourquoi nous transmettrons le mot-clé columns. La valeur de cet argument est un dictionnaire dont les entrées représentent la correspondance entre les anciens et les nouveaux noms de colonnes. Voici un exemple dans lequel nous renommons la colonne households colonne à houses.

housing_data.rename(columns={ 'households': 'houses' })

Cette opération devrait produire le résultat suivant :

Données de logement après avoir renommé la colonne du dataframe pandas

Comme vous pouvez le voir, nous transmettons un dictionnaire dont la clé est l'ancien nom de la colonne et la valeur est le nouveau nom de la colonne. La valeur ne doit pas nécessairement être une chaîne de caractères. Il peut également s'agir d'une fonction dont la valeur renvoyée par la fonction est le nouveau nom de la colonne. Si vous souhaitez renommer davantage de colonnes, vous pouvez ajouter d'autres entrées au dictionnaire.

Méthode 2 : Remplacement de la chaîne de la colonne

Une autre méthode que vous pouvez utiliser pour renommer des colonnes dans pandas consiste à remplacer la chaîne de la colonne dans un DataFrame. Supposons que vous souhaitiez renommer la colonne actuellement nommée population à number_of_people. En utilisant cette méthode, vous écririez le code suivant :

housing_data.columns = housing_data.columns.str.replace('population', 'number_of_people')

Pour imprimer la liste modifiée, nous utilisons le code suivant :

housing_data

Cela devrait produire la sortie suivante à l'écran :

Screenshot-from-2023-04-04-07-35-06

Méthode 3 : Attribution d'une liste de noms de colonnes

Vous pouvez également renommer les colonnes dans Pandas en assignant une liste à la propriété columns du DataFrame. Dans cet exemple, si je voulais renommer toutes les colonnes pour qu'elles utilisent toutes des nombres, je pourrais utiliser le code suivant :

housing_data.columns = [x for x in range(9)]

Dans cet exemple, j'ai défini le paramètre housing_data.columns à une liste d'entiers de 0 à 8. Pour générer la liste, j'ai utilisé la compréhension de liste, qui est une fonctionnalité native de Python permettant de générer commodément des listes de valeurs à l'aide d'une fonction for boucle.

L'inconvénient de cette méthode est que vous devez renommer l'ensemble des noms de colonnes ; vous ne pouvez pas renommer un sous-ensemble de colonnes. Idéalement, les noms de vos colonnes devraient être plus descriptifs, mais je n'utilise ici que des chiffres à titre de démonstration.

Vous pouvez visualiser le résultat en écrivant ce qui suit :

housing_data
Screenshot-from-2023-04-04-05-58-41

Méthode 4 : Utilisation de la fonction set_axis() pour renommer les colonnes dans Pandas

La méthode dont nous allons parler est la méthode set_axis de l'objet DataFrame. Cette méthode est utilisée pour définir une liste de valeurs comme valeurs d'axe pour n'importe lequel des deux axes de Pandas. Étant donné que nous renommons les colonnes, nous définissons axis 1. Pour utiliser cette méthode, nous utilisons le code suivant :

column_names = [str(x) for x in range(8, -1, -1)]
housing_data.set_axis(column_names, axis=1, inplace=True)

La première ligne génère une liste de valeurs de 8 à 0 dans l'ordre décroissant et les stocke dans le fichier column_names variable. Dans la deuxième ligne, nous appelons la méthode set_axis, en fournissant la variable column_names en tant qu'argument et en définissant l'axe à modifier comme étant l'axe 1. Nous définissons également inplace à True de sorte qu'il modifie le DataFrame d'origine.

Nous pouvons visualiser le DataFrame en écrivant :

housing_data

Le résultat devrait être le suivant :

Screenshot-from-2023-04-04-06-47-20

Dernières paroles

Cet article a brièvement présenté la manière dont les données sont stockées au format tabulaire dans Pandas. Nous avons également abordé les meilleures pratiques pour nommer les colonnes dans Pandas afin de nous faciliter la vie.

Enfin, et c'est le plus important, nous avons également discuté des différentes méthodes pour renommer les colonnes dans pandas.

Ensuite, consultez comment créer un DataFrame Pandas [avec des exemples].

  • Anesu Kafesu
    Auteur
Merci à nos sponsors
D'autres lectures intéressantes sur le développement
Alimentez votre entreprise
Quelques outils et services pour aider votre entreprise à se développer.
  • Invicti utilise le Proof-Based Scanning™ pour vérifier automatiquement les vulnérabilités identifiées et générer des résultats exploitables en quelques heures seulement.
    Essayez Invicti
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, search engine crawler, et tout ce dont vous avez besoin pour collecter des données web.
    Essayez Brightdata
  • Monday.com est un système d'exploitation tout-en-un qui vous aide à gérer vos projets, vos tâches, votre travail, vos ventes, votre CRM, vos opérations, vos flux de travail et bien plus encore.
    Essayez le lundi
  • Intruder est un scanner de vulnérabilité en ligne qui détecte les faiblesses de votre infrastructure en matière de cybersécurité, afin d'éviter des violations de données coûteuses.
    Essayer l'intrus