Maison > développement back-end > Tutoriel Python > Comment calculer le pourcentage de ventes par bureau dans chaque État à l'aide de Pandas ?

Comment calculer le pourcentage de ventes par bureau dans chaque État à l'aide de Pandas ?

Linda Hamilton
Libérer: 2024-12-06 09:48:11
original
524 Les gens l'ont consulté

How to Calculate the Percentage of Sales per Office within Each State using Pandas?

Pourcentage du total avec Groupby dans Pandas

Le calcul du pourcentage de ventes contribué par chaque bureau au sein d'un État nécessite une approche nuancée dans Pandas. Bien que le simple regroupement par « state » et « office_id » vous donne la somme des ventes pour chaque bureau, il ne fournit pas le pourcentage de contribution au sein de l'état.

Pour y parvenir, vous devez d'abord créer un groupby objet basé sur « state » et « office_id ». Cela vous donnera un cadre de données avec la colonne des ventes contenant les ventes totales pour chaque combinaison bureau-état :

state_office = df.groupby(['state', 'office_id']).agg({'sales': 'sum'})
Copier après la connexion

Pour calculer le pourcentage, vous pouvez diviser les ventes de chaque bureau par les ventes totales de cet état. Cependant, pour accéder aux ventes totales de chaque état au sein du groupby, vous devez créer un deuxième objet groupby basé sur 'state' :

state_total = df.groupby('state').agg({'sales': 'sum'})
Copier après la connexion

En utilisant cet objet, vous pouvez améliorer le groupby 'state_office' avec une nouvelle colonne contenant le pourcentage de ventes pour chaque combinaison bureau-état :

state_pcts = state_office.groupby(level=0).apply(lambda x:
                                                 100 * x / float(state_total.loc[x.name]))
Copier après la connexion

Notez que le paramètre 'level=0' dans 'groupby' fait référence au haut niveau de l'index multi-niveaux formé par le groupby d'origine sur 'state' et 'office_id'.

Cette approche garantit que le pourcentage de ventes de chaque bureau est calculé en faisant référence aux ventes totales dans l'état respectif.

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