Groupby — notion assez simple. Nous pouvons créer un groupe de catégories et appliquer la fonction aux catégories. C`est un concept simple, mais c`est une technique extrêmement précieuse qui est largement utilisée dans les data scientifique. Dans les projets de data science du monde réel, vous aurez affaire à de grandes quantités de données et d`essayer de faire les choses à plusieurs reprises, donc pour plus d`efficacité, nous utilisons le concept Groupby. Le concept Groupby est vraiment important car il est capable de combiner efficacement les données, tant en termes de performances que de quantité de code. Le regroupement fait principalement référence à un processus impliquant une ou plusieurs des étapes suivantes :
- Séparation : est un processus dans lequel nous divisons les données en groupes en appliquant certaines conditions aux ensembles de données .
- Application : est un processus dans lequel nous appliquons une fonction à chaque groupe indépendamment
- Consolidation : est un processus dans lequel nous combinons différents ensembles de données après avoir appliqué le regroupement et les résultats dans une structure de données
L`image suivante vous aidera à comprendre le processus impliqué dans le concept Groupby.
1. Regroupez les valeurs uniques ‚Äã‚Äãde la colonne "Équipe".
2. Il y a maintenant un bucket pour chaque groupe
3. Mettez d`autres données dans des compartiments
4. Appliquez la fonction à la colonne de poids pour chaque compartiment.
Diviser les données en groupes
Fractionner — c`est un processus dans lequel nous divisons les données en groupes en appliquant certaines conditions aux ensembles de données. Pour séparer les données, nous appliquons certaines conditions aux ensembles de données. Pour séparer les données, nous utilisons groupby ()
cette fonction est utilisée pour diviser les données en groupes selon certains critères . Les objets Pandas peuvent être subdivisés en n`importe lequel de leurs axes. Une définition abstraite du groupement consiste à fournir un mappage des étiquettes aux noms de groupe. Les ensembles de données Pandas peuvent être divisés en n`importe quels objets. Il existe plusieurs façons de diviser les données, par exemple :
Remarque : ici nous nous référons au regroupement d`objets en tant que clés.
Regroupement de données avec une clé :
Pour regrouper des données avec une clé, nous ne transmettons qu`une seule clé comme argument au groupby
fonction.
< br>
|
Sortie :
Regroupement de données avec plusieurs clés :
Pour regrouper des données avec plusieurs clés, nous transmettons plusieurs clés dans groupby
fonction.
# importation du module pandas
import
pandas as pd
# Définir un dictionnaire contenant les données des employés
data1
=
{
`Nom`
: [
`Jai`
,
` Anuj`
,
`Jai`
,
` Princi`
,
`Gaurav`
,
` Anuj`
,
`Princi`
,
` Abhi`
],
`Âge`
: [
27
,
24
,
22
,
32
,
33
,
36
,
27
,
32
],
`Adresse`
: [
` Nagpur`
,
`Kanpur`
,
` Allahabad`
,
`Kannuaj` ​​
,
`Jaunpur`
,
`Kanpur`
,
` Allahabad `
,
`Aligarh`
],
`Qualification`
: [
`Msc`
,
` MA`
,
` MCA`
,
` Phd`
,
`B.Tech`
,
`B.com`
,
` Msc`
,
`MA`
]}
# Convertir le dictionnaire en DataFrame
df
=
pd. DataFrame (data1)
(df)
Nous allons maintenant regrouper les données de nom et de qualification en utilisant plusieurs clés dans la fonction groupby
fonctionnent.
Sortie : Regroupement des données par tri par clé :
|
Nous appliquons maintenant groupby ()
pas de tri
# en utilisant la fonction groupby
# sans utiliser le tri
df.groupby ([
`Nom`
]).
sum
()
Sortie :
Maintenant, nous utilisons groupby ()
en utilisant le tri pour atteindre une accélération potentielle.
Sortie : Regroupement de données avec des attributs d`objet :
< classe de code = "commentaires" > # en utilisant les clés de regroupement
|
Sortie :
Itérer sur les groupes
Pour itérer sur l`élément de groupes, nous pouvons itérer sur un objet similaire à iterto.ols .
# pandas module import
importer
pandas en tant que pd
# Définir le dictionnaire contenant les données sur les employés
data1
=
{
`Nom`
: [
` Jai`
` Anuj`
,
`Jai`
,
`Principe`
,
`Gaurav`
,
` Anuj `
,
` Princi`
,
`Abhi`
],
` Age`
: [
27
,
24
,
22
,
32
,
33
,
36
,
27
,
32
],
` Adresse`
: [
` Nagpur`
,
`Kanpur`
,
`Allahabad`
,
`Kannuaj` ​​
,
` Jaunpur `
,
` Kanpur`
,
`Allahabad`
,
`Aligarh`
],
`Qualification`
: [
`Msc`
,
`MA`
,
`MCA`
,
`Phd`
,
`B.Tech`
,
` B.com`
,
`Msc`
,
` MA `
]}
# Convertir le dictionnaire en DataFrame
df
=
pd.DataFrame (data1)
print
Nous répétons maintenant l`élément de groupe comme nous le faisons dans itertools.obj.
# répétition d`élément
Groupe #
grp
=
df.groupby (
`Nom`
)
pour
nom, groupe
dans
grp :
print
(nom)
print
(groupe)
print
()
Sortie :
Nous parcourons maintenant un élément de groupe contenant plusieurs clés
# element repeat
# du groupe contenant
# plusieurs clés
grp
=
df.groupby ([
`Nom`
,
` Qualification`
])
pour
nom, groupe
dans
grp :
print
(name)
print
(groupe)
print
( )
Sortie :
Comme indiqué dans la sortie, le nom du groupe sera un tuple
Sélection de groupe
Pour sélectionner un groupe, nous pouvons sélectionner un groupe en utilisant GroupBy.get_group ()
. Nous pouvons sélectionner un groupe en appliquant la fonction GroupBy.get_group
cette fonction sélectionnera un groupe.
# pandas module import
import
pandas as pd
# Définir un dictionnaire contenant les données des employés
data1
=
{
`Nom`
: [
`Jai`
,
` Anuj`
,
`Jai`
,
` Princi`
,
`Gaurav`
,
`Anuj`
,
` Princi`
,
`Abhi`
],
imprimer
(nom)
print
(groupe)
print
()
Sortie :
Comme indiqué dans la sortie, le nom du groupe sera un tuple
Sélection de groupe
Pour sélectionner un groupe, nous pouvons sélectionner un groupe en utilisant GroupBy.get_group ()
. Nous pouvons sélectionner un groupe en appliquant la fonction GroupBy.get_group
cette fonction sélectionnera un groupe .
# importation du module pandas
importation