Maison > développement back-end > Tutoriel Python > Comment puis-je regrouper une colonne Pandas DataFrame et compter les valeurs dans chaque bac ?

Comment puis-je regrouper une colonne Pandas DataFrame et compter les valeurs dans chaque bac ?

Mary-Kate Olsen
Libérer: 2024-12-16 19:21:12
original
786 Les gens l'ont consulté

How Can I Bin a Pandas DataFrame Column and Count Values in Each Bin?

Regrouper une colonne avec des pandas

La manipulation des données implique souvent d'organiser les valeurs en groupes ou compartiments significatifs. Dans ce contexte, nous allons explorer comment regrouper une colonne avec des valeurs numériques à l'aide de pandas.

Question :

Étant donné une colonne de bloc de données avec des valeurs numériques, nous souhaitons visualisez-le sous forme de bacs avec des comptes de valeurs. Plus précisément, comment pouvons-nous déterminer le nombre de valeurs qui entrent dans chaque bac ?

Réponse :

Option 1 : Utiliser pandas.cut

La fonction pandas.cut peut être utilisée pour créer des bacs. Voici un exemple :

import pandas as pd

bins = [0, 1, 5, 10, 25, 50, 100]
df['binned'] = pd.cut(df['percentage'], bins)
df['binned'].value_counts()
Copier après la connexion

Cela créera des bacs en fonction des intervalles spécifiés et renverra une série contenant les affectations de bacs pour chaque valeur. En utilisant value_counts, nous pouvons compter le nombre d'occurrences dans chaque bac.

Option 2 : Utiliser numpy.searchsorted

Une autre approche consiste à utiliser numpy.searchsorted :

import numpy as np

bins = [0, 1, 5, 10, 25, 50, 100]
df['binned'] = np.searchsorted(bins, df['percentage'].values)
df['binned'].value_counts()
Copier après la connexion

Cette fonction renvoie l'index du premier bac auquel appartient chaque valeur. Nous pouvons ensuite utiliser value_counts pour déterminer le nombre de bacs.

Option 3 : Combiner Groupby et Size

Nous pouvons également utiliser les méthodes groupby et size des pandas :

s = df.groupby(pd.cut(df['percentage'], bins)).size()
Copier après la connexion

Cela regroupera le bloc de données par affectations de casiers et renverra une série avec le nombre de valeurs dans chacun bin.

Conclusion :

Ces méthodes nous permettent de classer efficacement une colonne numérique et d'obtenir le nombre de valeurs pour chaque bac, fournissant ainsi un aperçu de la distribution des valeurs.

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