Pandas GroupBy

| | | | | | | | | | | | | | | | | | | | | |

Gruppieren nach — ziemlich einfaches Konzept. Wir können eine Gruppe von Kategorien erstellen und die Funktion auf die Kategorien anwenden. Es ist ein einfaches Konzept, aber es ist eine äußerst wertvolle Technik, die in Daten weit verbreitet ist Wissenschaft. In realen Data Science-Projekten werden Sie mit großen Mengen zu tun haben von Daten und versuchen, Dinge wiederholt zu tun, also verwenden wir aus Effizienzgründen das Groupby-Konzept. Das Groupby-Konzept ist wirklich wichtig, da es Daten effizient kombinieren kann, sowohl in Bezug auf die Leistung als auch auf die Menge an Code. Gruppierung bezieht sich hauptsächlich auf einen Prozess, der einen oder mehrere der folgenden Schritte umfasst:

  • Trennung: ist ein Prozess, bei dem wir Daten in Gruppen aufteilen, indem wir einige Bedingungen auf Datensätze anwenden .
  • Anwendung: ist ein Prozess, bei dem wir eine Funktion unabhängig voneinander auf jede Gruppe anwenden.
  • Konsolidierung: ist ein Prozess, bei dem Wir kombinieren verschiedene Datensätze nach der Anwendung von Gruppierungen und Ergebnissen in einer Datenstruktur

Das folgende Bild hilft Ihnen, den Prozess des Groupby-Konzepts zu verstehen.
1. Gruppieren Sie die eindeutigen Werte „Äã‚Äãaus der Spalte „Team“.

2. Für jede Gruppe gibt es nun einen Bucket

3. Werfen Sie andere Daten in Eimer

4. Wenden Sie die Funktion auf die Gewichtsspalte für jeden Bucket an.

Aufteilen von Daten in Gruppen

Aufteilen — Es ist ein Prozess, bei dem wir die Daten in Gruppen aufteilen, indem wir einige Bedingungen auf die Datensätze anwenden. Um Daten zu trennen, wenden wir bestimmte Bedingungen auf Datensätze an. Um Daten zu trennen, verwenden wir groupby () Diese Funktion wird verwendet, um Daten nach bestimmten Kriterien in Gruppen zu unterteilen . Pandas-Objekte können in jede ihrer Achsen unterteilt werden. Eine abstrakte Definition von Gruppierung besteht darin, eine Zuordnung von Bezeichnungen zu Gruppennamen bereitzustellen. Pandas-Datensätze können in beliebige Objekte aufgeteilt werden. Es gibt mehrere Möglichkeiten, Daten aufzuteilen, zum Beispiel:

Hinweis: hier Wir bezeichnen das Gruppieren von Objekten als Schlüssel.
Gruppieren von Daten mit einem Schlüssel:
Um Daten mit einem Schlüssel zu gruppieren, übergeben wir nur einen Schlüssel als Argument an groupby Funktion.

< br>Nun gruppieren wir die Daten Name mithilfe der Funktion groupby () .


# Verwendung der groupby-Funktion
# mit einem Schlüssel

df.groupby ( `Name` )

print (df.groupby< /a> ( `Name` ). Gruppen)

Ausgabe:

Nun drucken wir die ersten Datensätze in allen gebildeten Gruppen .


# anwenden groupby ()-Funktion zum
# Gruppieren von Daten nach Namenswert

gk = df.groupby ( `Name` )


# Erste Einträge
# in allen generierten Gruppen drucken.
gk.first ()

# pandas module import

import pandas as pd


# Definition eines Wörterbuchs mit Mitarbeiterdaten

data1 = { `Name` : [ `Jai` , `Anuj` , ` Jai` , `Princi` ,

` Gaurav` , `Anuj` , `Princi` , `Abhi` ],

` Age` : [ 27 , 24 , 22 , 32 ,

33 , < Codeklasse = "Wert"> 36 , 27 , 32 ],

`Adresse` : [ ` Nagpur` , `Kanpur ` , `Allahabad` , `Kannuaj` ‚Äã‚Äã ,

` Jaunpur` , `Kanpur` , `Allahabad` , ` Aligarh` ],

`Qualifikation` : [ `Msc` , ` MA` , `MCA` , ` Phd` ,

`B.Tech` , ` B.com` , `Msc` , ` MA` ]}


< br> # Wörterbuch in DataFrame konvertieren

df = pd.DataFrame (data1)

print (df)

Ausgabe:

Daten mit mehreren Schlüsseln gruppieren:
Um Daten mit mehreren Schlüsseln zu gruppieren, übertragen wir mehrere Schlüssel in groupby Funktion.


# pandas module import

import pandas as pd


# Definition eines Wörterbuchs mit Mitarbeiterdaten

data1 = { `Name` : [ `Jai` , `Anuj` , `Jai` , ` Princi` ,

`Gaurav` , ` Anuj` , `Princi` , ` Abhi` ],

`Age` : [ 27 , 24 , 22 , 32 ,

33 , 36 , 27 , 32 ],

`Adresse` : [ ` Nagpur` , `Kanpur` , ` Allahabad` , `Kannuaj` ‚Äã‚Äã ,

`Jaunpur` < Codeklasse ="plain">, `Kanpur` , ` Allahabad ` , `Aligarh` ],

`Qualifikation` : [ `Msc` , ` MA` , ` MCA` , ` Phd` ,

`B.Tech` , `B.com` , ` Msc` , `MA` ]}



# Wörterbuch in DataFrame konvertieren

df = pd. DataFrame (data1)


print (df)


Nun gruppieren wir die Namens- und Qualifikationsdaten mithilfe von mehrere Schlüssel in der groupby -Funktion funktionieren.


# Verwendung mehrerer Schlüssel in
# groupby () function

df.groupby ([ ` Name` , `Qualifikation` ])


print (df.groupby ([ `Name` , `Qualifikation` ]). Gruppen)

Ausgabe:

Gruppieren von Daten nach Schlüsselsortierung:
Gruppenschlüssel werden standardmäßig während des Massenvorgangs sortiert. Der Benutzer kann sort = False für mögliche Beschleunigungen übergeben.


# pandas module import

importiere Pandas als pd


# Definition eines Wörterbuchs mit Mitarbeiterdaten

data1 = { `Name` : [ `Jai` , ` Anuj` , `Jai` , ` Princi` ,

`Gaurav` , `Anuj` , ` Princi` , `Abhi` ],

`Alter` : [ 27 , 24 , 22 , 32 ,

33 , 36 , 27 , 32 ],}



# Wörterbuch in DataFrame konvertieren

df = pd.DataFrame (data1)


print (df)


Jetzt bewerben wir uns groupby () keine Sortierung



# Verwendung der groupby-Funktion
# ohne Verwendung der Sortierung


df.groupby ([ `Name` ]). sum ()

Ausgabe:

Jetzt verwenden wir groupby () mit sort, um eine potenzielle Beschleunigung zu erzielen.


# unter Verwendung von groupby Funktion
# sortiert


df .groupby ([ `Name` ], sort = False ). sum ( )

Ausgabe:

Gruppierung von Daten mit Objektattributen:
Das Gruppenattribut ähnelt einem Wörterbuch, dessen Schlüssel berechnete eindeutige Gruppen sind und die entsprechenden Werte ‚Äã‚Äãsind die Achsenbeschriftungen, die zu jeder Gruppe gehören.


# pandas module import

import pandas as pd


# Definition eines Wörterbuchs mit Mitarbeiterdaten

data1 = { `Name` : [ ` Jai` , `Anuj` , `Jai` , `Princi` ,

`Gaurav` , ` Anuj` , `Princi` , ` Abhi` ],

`Alter` : [ 27 , 24 , 22 , 32 ,

33 , 36 , 27 , 32 ],

`Adresse` : [ ` Nagpur` , `Kanpur` , `Allahabad` , ` Kannuaj` ‚Äã‚Äã ,

`Jaunpur` , `Kanpur` , ` Allahabad` , `Aligarh` ],

` Qualifikation` : [ `Msc` , `MA` , `MCA` , ` Phd` ,

`B .Tech` , `B.com` , ` Msc` , `MA` ]}



# Wörterbuch in DataFrame konvertieren

df = pd.DataFrame (data1)


print (df)


Jetzt gruppieren wir die Daten wie in einem Wörterbuch mit Schlüsseln.

# Gruppierungsschlüssel verwenden
# Daten


df.groupby ( ` Name` ). Gruppen

Ausgabe:

Iteration über die Gruppen

Zu über das Gruppenelement iterieren, können wir über ein Objekt iterto.ols ähnlich iterieren.


# pandas module import

import Pandas als pd


# Definieren Sie das Wörterbuch, das die Daten über Mitarbeiter enthält

data1 = { `Name` : [ ` Jai` , ` Anuj` , `Jai` , `Princi` ,

`Gaurav` , ` Anuj ` , ` Princi` , `Abhi` ],

` Age` : [ 27 , 24 , 22 , 32 ,

33 , 36 , 27 , 32 ],

` Adresse` : [ ` Nagpur` , `Kanpur` , `Allahabad` , `Kannuaj` ‚Äã‚Äã ,

` Jaunpur ` , ` Kanpur` , `Allahabad` , ` Aligarh` ],

`Qualifikation` : [ `Msc` , `MA` , `MCA` , `Phd` ,

`B.Tech` , ` B.com` , `Msc` , ` MA ` ]}


# Wörterbuch in DataFrame konvertieren

df = pd.DataFrame (data1)

print (df)


Wir wiederholen jetzt das Gruppenelement genau wie in itertools.obj.


# Elementwiederholung
Group #


grp = df.groupby ( `Name` )

für Name, Gruppe in grp:

print (name)

print (group)

print ()

Ausgabe:

Nun iterieren wir über ein Gruppenelement enthält mehrere Schlüssel


# element repeat
# der Gruppe, die
# mehrere Schlüssel


grp < enthält /code> = df.groupby ([ `Name` , ` Qualifikation` ])

für Name, Gruppe in grp:

print (name)

print (Gruppe)

print ( )

Ausgabe:
Wie in der Ausgabe gezeigt, ist der Gruppenname ein Tupel

Gruppenauswahl

Um a auszuwählen group, können wir eine Gruppe mit GroupBy.get_group () auswählen. Wir können eine Gruppe auswählen, indem wir die Funktion GroupBy.get_group anwenden. Diese Funktion wählt eine Gruppe aus.


# pandas module import

import pandas as pd


# Definition eines Wörterbuchs mit Mitarbeiterdaten

data1 = { `Name` : [ `Jai` , ` Anuj` , `Jai` , ` Princi` ,

`Gaurav` , `Anuj` , ` Princi` , `Abhi` ],

print (name)

print (group)

print ()

Ausgabe:
Wie in der Ausgabe gezeigt, lautet der Gruppenname ein Tupel

Gruppenauswahl

Um eine Gruppe auszuwählen, können wir eine Gruppe mit GroupBy.get_group () auswählen. Wir können eine Gruppe auswählen, indem wir die Funktion GroupBy.get_group anwenden. Diese Funktion wählt eine Gruppe aus .


# pandas module import

import pandas als pd