Maison  >  Article  >  développement back-end  >  Comment compter la fréquence des lignes en double dans un DataFrame Pandas basé sur plusieurs colonnes ?

Comment compter la fréquence des lignes en double dans un DataFrame Pandas basé sur plusieurs colonnes ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-25 03:17:02528parcourir

How to Count the Frequency of Duplicate Rows in a Pandas DataFrame Based on Multiple Columns?

Obtention d'un décompte de fréquence basé sur plusieurs colonnes de dataframe

Dans une dataframe donnée, où chaque ligne est composée de plusieurs colonnes, il est souvent nécessaire pour déterminer la fréquence à laquelle les lignes en double apparaissent. Cette tâche peut être réalisée à l'aide de la bibliothèque pandas de Python.

Solution

La fonction pandas groupby() permet de regrouper des lignes en fonction de colonnes spécifiques. Pour compter la fréquence des lignes en double, nous pouvons regrouper par colonnes souhaitées et utiliser la fonction size() :

<code class="python">dfg = df.groupby(by=["Group", "Size"]).size()</code>

Ce code générera un objet pandas.Series avec les clés de groupe comme index et la fréquence compter comme des valeurs. Pour le convertir en dataframe, nous pouvons utiliser la fonction reset_index() :

<code class="python">dfg = df.groupby(by=["Group", "Size"]).size().reset_index(name="Time")</code>

Dans cet exemple, le dataframe résultant aura des colonnes pour "Groupe", "Taille" et "Heure", où "Time" représente le nombre de fréquences.

Une approche alternative consiste à utiliser l'argument as_index=False dans groupby() :

<code class="python">dfg = df.groupby(by=["Group", "Size"], as_index=False).size()</code>

Cela générera directement une trame de données sans avoir besoin d'autres manipulation d'index.

En utilisant ces techniques, vous pouvez facilement obtenir un décompte de fréquence basé sur plusieurs colonnes dans une trame de données et obtenir des informations précieuses sur la distribution des données.

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