Maison > développement back-end > Tutoriel Python > Comment supprimer les colonnes en double dans Pandas ?

Comment supprimer les colonnes en double dans Pandas ?

Linda Hamilton
Libérer: 2024-11-01 20:17:02
original
1010 Les gens l'ont consulté

How to Remove Duplicate Columns in Pandas?

Comment supprimer les colonnes en double dans Pandas

Si vous avez affaire à un DataFrame qui a des colonnes en double, vous souhaiterez peut-être les supprimer à des fins de cohérence ou d’analyse des données. Voici une solution simple pour y parvenir :

<code class="python">df = df.loc[:,~df.columns.duplicated()].copy()</code>
Copier après la connexion

Mécanisme :

  • df.columns.duplicate() crée un tableau booléen où True indique un doublon le nom de la colonne et False indique un nom unique.
  • L'application de ~ (négation logique) retourne ce tableau, en sélectionnant uniquement le colonnes non dupliquées.
  • df.loc[:,...] utilise l'indexation booléenne pour sélectionner ces colonnes non dupliquées, supprimant ainsi efficacement les doublons.
  • La copie() garantit qu'un un nouveau DataFrame est créé avec les doublons supprimés, laissant le DataFrame d'origine non affecté.

Remarque :Cette méthode vérifie les doublons en fonction des noms de colonnes, et non des valeurs de colonnes.

Approches alternatives :

Suppression des doublons Index :

<code class="python">df = df.loc[~df.index.duplicated(),:].copy()</code>
Copier après la connexion

Cela supprime toutes les lignes en double en utilisant un mécanisme similaire à celui ci-dessus, mais il vérifie l'index au lieu des noms de colonnes.

Suppression des doublons par valeurs ( Attention) :

<code class="python">df = df.loc[:,~df.apply(lambda x: x.duplicated(),axis=1).all()].copy()</code>
Copier après la connexion

Cette approche analyse chaque colonne et la supprime si toutes les valeurs de cette colonne sont dupliqué. Cependant, il doit être utilisé avec prudence car il vérifie les valeurs, pas les noms de colonnes, et peut ne pas donner les résultats souhaités dans tous les cas.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal