Maison  >  Article  >  développement back-end  >  Comment récupérer des lignes avec des valeurs uniques dans un DataFrame Pandas ?

Comment récupérer des lignes avec des valeurs uniques dans un DataFrame Pandas ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-04 04:11:30512parcourir

How to Retrieve Rows with Unique Values in a Pandas DataFrame?

Récupération de lignes par valeurs de colonne distinctes : un guide complet

De nombreux scénarios de programmation nécessitent l'extraction de lignes en fonction de valeurs uniques dans des colonnes spécifiques. Cet article explique comment y parvenir à l'aide de la bibliothèque Pandas largement utilisée en Python.

Requête :

Considérons un ensemble de données avec deux colonnes, COL1 et COL2, comme indiqué ci-dessous :

COL1   COL2
a.com  22
b.com  45
c.com  34
e.com  45
f.com  56
g.com  22
h.com  45

Le but est de récupérer uniquement les lignes où COL2 contient des valeurs uniques. Le résultat attendu est :

COL1  COL2
a.com 22
b.com 45
c.com 34
f.com 56

Solution :

La méthode drop_duplicates dans Pandas fournit un moyen simple d'éliminer les lignes en double en fonction d'une ou plusieurs colonnes. Voici comment l'utiliser pour cette tâche spécifique :

<code class="python">import pandas as pd

df = pd.DataFrame({'COL1': ['a.com', 'b.com', 'c.com', 'e.com', 'f.com', 'g.com', 'h.com'],
                  'COL2': [22, 45, 34, 45, 56, 22, 45]})

# Keep only the first occurrence of each unique value in COL2
df = df.drop_duplicates('COL2')

print(df)</code>

Sortie :

  COL1  COL2
0  a.com    22
1  b.com    45
2  c.com    34
4  f.com    56

Options supplémentaires :

La méthode drop_duplicates offre des options pour personnaliser la gestion des doublons :

  • keep='last' : Conserver la dernière occurrence de chaque valeur unique.
  • keep=False  : Supprimez entièrement toutes les lignes en double.

Voici des exemples illustrant ces options :

<code class="python"># Keep only the last occurrence of each unique value in COL2
df = df.drop_duplicates('COL2', keep='last')

# Remove all duplicate rows from the dataset
df = df.drop_duplicates('COL2', keep=False)</code>

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!

Déclaration:
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