Comment sélectionner efficacement des lignes avec des valeurs de colonne minimales dans les Pandas DataFrames ?

Linda Hamilton
Libérer: 2024-10-26 17:36:02
original
372 Les gens l'ont consulté

How to Efficiently Select Rows with Minimum Column Values in Pandas DataFrames?

Pandas GroupBy et sélection efficace de lignes avec des valeurs de colonne minimales

Lorsque vous travaillez avec Pandas DataFrames, la sélection de lignes en fonction de valeurs de colonne spécifiques est une pratique courante tâche. Dans le scénario où vous devez extraire des lignes avec la valeur minimale dans une colonne particulière, il existe un moyen simple et efficace d'y parvenir.

Pour illustrer, considérons le DataFrame suivant :

df = pd.DataFrame({'A': [1, 1, 1, 2, 2, 2],
                   'B': [4, 5, 2, 7, 4, 6],
                   'C': [3, 4, 10, 2, 4, 6]})
Copier après la connexion

Pour sélectionner les lignes avec la valeur minimale dans la colonne B pour chaque valeur de A, nous pouvons utiliser les méthodes groupby et idxmin :

minimum_rows = df.loc[df.groupby('A').B.idxmin()]
Copier après la connexion

Cette opération regroupe le DataFrame par colonne A et identifie l'index de la ligne avec la valeur minimale dans la colonne B pour chaque groupe. La méthode loc extrait ensuite ces lignes pour créer le DataFrame minimum_rows.

   A  B   C
2  1  2  10
4  2  4   4
Copier après la connexion

Si vous souhaitez réinitialiser l'index pour garantir des entiers consécutifs, vous pouvez utiliser la méthode reset_index :

minimum_rows.reset_index(drop=True)

   A  B   C
0  1  2  10
1  2  4   4
Copier après la connexion

En tirant parti des méthodes groupby et idxmin, vous disposez d'une approche efficace pour sélectionner les lignes avec la valeur minimale dans une colonne spécifiée, sans avoir besoin de MultiIndex ou d'opérations complexes.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!