Maison >développement back-end >Tutoriel Python >Comment puis-je regrouper des données numériques dans un DataFrame Pandas et compter les valeurs dans chaque bac ?
Regrouper une colonne avec des pandas pour obtenir des comptes de valeurs
Lorsque vous traitez des données numériques dans un bloc de données pandas, il peut être utile de trier les données dans des plages spécifiques pour analyse. Ce processus est connu sous le nom de binning.
Pour regrouper une colonne dans pandas, vous pouvez suivre les étapes suivantes :
Exemple :
Considérez le bloc de données suivant avec une colonne numérique nommée « pourcentage » :
import pandas as pd import numpy as np df = pd.DataFrame({'percentage': [46.5, 44.2, 100.0, 42.12]})
Vers le bac. la colonne « pourcentage » dans les bacs suivants :
bins = [0, 1, 5, 10, 25, 50, 100]
Vous pouvez utiliser la fonction de coupe comme suit :
df['binned'] = pd.cut(df['percentage'], bins=bins)
Cela créera une nouvelle colonne appelée « binned » dans le bloc de données qui contient les étiquettes des bacs.
Pour obtenir le nombre de valeurs dans chaque bac, vous pouvez utiliser le Méthode value_counts :
print(df['binned'].value_counts())
Sortie :
(25, 50] 3 (50, 100] 1
Vous pouvez également utiliser groupby et agréger la taille :
print(df.groupby(df['binned']).size())
Sortie :
percentage (0, 1] 0 (1, 5] 0 (5, 10] 0 (10, 25] 0 (25, 50] 3 (50, 100] 1 dtype: int64
Cela vous fournit le nombre de valeurs dans chaque bac.
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!