Pyspark - Pandas DataFrame Aggregate Functions

Pyspark - Pandas DataFrame Aggregate Functions
“I Python er Pyspark en Spark -modul som gir en lignende type prosessering som Spark ved hjelp av DataFrame, som vil lagre de gitte dataene i rad- og kolonneformat.

Pyspark - Pandas DataFrame representerer Pandas DataFrame, men den holder Pyspark DataFrame internt.

Pandas støtter dataframdatastruktur, og Pandas importeres fra Pyspark -modulen.

Før det må du installere Pyspark -modulen.”

Kommando

PIP installer pyspark

Syntaks for å importere

Fra Pyspark Import Pandas

Etter det kan vi opprette eller bruke DataFrame fra Pandas -modulen.

Syntaks for å lage pandas dataaframe

Pyspark.Pandas.Dataramme()

Vi kan passere en ordbok eller liste over lister med verdier.

La oss lage en Pandas dataaframe gjennom Pyspark med fire søyler og fem rader.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#vise
print (pyspark_pandas)

Produksjon

Nå vil vi gå inn på opplæringen vår.

Aggregatefunksjoner brukes til å utføre aggregeringsoperasjoner som sum (), Min (), Mean () og Max ().Disse operasjonene fungerer bare på numeriske data som heltall, dobbel osv.

La oss se dem en etter en.

Pyspark.Pandas.Dataramme.sum()

sum () i Pyspark Pandas DataFrame brukes til å returnere den totale summen over radene og kolonnene.

Hvis du vil returnere summen over hver rad, må du spesifisere aksen = 1, og hvis du vil returnere summen over hver kolonne, må du spesifisere aksen = 0. Som standard vil den utføre kolonnemessig.

Syntaks

pyspark_pandas.sum (akse = 0/akse = 1)

Hvor pyspark_pandas er pyspark pandas dataaframe.

Parameter
Det tar bare en parameter.

Axis-0 spesifiserer kolonnemessig beregning og Axis = 1 spesifiserer radmessig beregning.

Eksempel 1
I dette eksemplet vil vi returnere den totale summen over hver rad.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#Perform Sum () Aggregation Operation Row Wise
trykk (pyspark_pandas.sum (akse = 1))

Produksjon

0 281
1 237
2 284
3 240
4 231
DTTYPE: INT64

Vi kan se at sumoperasjonen utføres over hver rad.

Som første rad - 90+100+91 = 281.

Eksempel 2
I dette eksemplet vil vi returnere den totale summen over hver kolonne.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#Perform Sum () Aggregation Operation Column Wise

Produksjon

Mark1 379
Mark2 429
Mark3 465
DTTYPE: INT64

Vi kan se at sumoperasjonen utføres over hver kolonne.

Som for Mark1 -kolonnen - 90+78+90+54+67 = 379.

Pyspark.Pandas.Dataramme.mener()

Gjennomsnitt () i Pyspark Pandas DataFrame brukes til å returnere det totale gjennomsnittet over radene og kolonnene.

Hvis du vil returnere gjennomsnittet over hver rad, må du spesifisere aksen = 1, og hvis du vil returnere gjennomsnittet over hver kolonne, må du spesifisere aksen = 0. Som standard vil den utføre kolonnemessig.

Syntaks

pyspark_pandas.Gjennomsnitt (Axis = 0/Axis = 1)

Hvor pyspark_pandas er pyspark pandas dataaframe.

Parameter

Det tar bare en parameter.

Axis-0 spesifiserer kolonnemessig beregning og Axis = 1 spesifiserer radmessig beregning.

Eksempel 1
I dette eksemplet vil vi returnere det totale gjennomsnittet over hver rad.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#Perform Mean () Aggregation Operation Row Wise
trykk (pyspark_pandas.Gjennomsnitt (akse = 1))

Produksjon

0 93.666667
1 79.000000
2 94.666667
3 80.000000
4 77.000000
dtype: float64

Vi kan se at den gjennomsnittlige operasjonen utføres på tvers av hver rad.

Som, første rad - (90+100+91)/3 = 93.666667

Eksempel 2
I dette eksemplet vil vi returnere det totale gjennomsnittet over hver kolonne.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#Perform Mean () Aggregation Operation Column Wise
trykk (pyspark_pandas.Gjennomsnitt (akse = 0))

Produksjon

Mark1 75.8
Mark2 85.8
Mark3 93.0
dtype: float64

Vi kan se at den gjennomsnittlige operasjonen utføres over hver kolonne.

Som for Mark1 -kolonnen - (90+78+90+54+67)/5 = 75.8.

Pyspark.Pandas.Dataramme.min ()

Min () I Pyspark Pandas brukes DataFrame til minimumsverdi over radene og kolonnene.

Hvis du vil returnere minimumsverdien over hver rad, må du spesifisere aksen = 1, og hvis du vil returnere minimum over hver kolonne, må du spesifisere aksen = 0. Som standard vil den utføre kolonnemessig.

Syntaks

pyspark_pandas.min (akse = 0/akse = 1)

Hvor pyspark_pandas er pyspark pandas dataaframe.

Parameter
Det tar bare en parameter.

Axis-0 spesifiserer kolonnemessig beregning og Axis = 1 spesifiserer radmessig beregning.

Eksempel 1
I dette eksemplet vil vi returnere minimumsverdien over hver rad.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#Perform Min () Aggregation Operation Row Wise
trykk (pyspark_pandas.min (akse = 1))

Produksjon

0 90
1 67
2 90
3 54
4 67
DTTYPE: INT64

Vi kan se at min () aggregeringen utføres over hver rad.

Som, første rad - minimum (90.100.91) = 90

Eksempel 2
I dette eksemplet vil vi returnere minimumsverdien over hver kolonne.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#Perform Min () Aggregation Operation Column Wise
trykk (pyspark_pandas.min (akse = 0))

Produksjon

Mark1 54
Mark2 67
Mark3 87
DTTYPE: INT64

Vi kan se at min () aggregeringen utføres over hver kolonne.

Som for Mark1 -kolonnen - min (90,78,90,54,67) = 54.

Pyspark.Pandas.Dataramme.Max ()

Max () I Pyspark Pandas brukes DataFrame til maksimal verdi over radene og kolonnene.

Hvis du vil returnere den maksimale verdien over hver rad, må du spesifisere aksen = 1, og hvis du vil returnere maksimum over hver kolonne, må du spesifisere aksen = 0. Som standard vil den utføre kolonnemessig.

Syntaks

pyspark_pandas.maks (akse = 0/akse = 1)

Hvor pyspark_pandas er pyspark pandas dataaframe.

Parameter
Det tar bare en parameter.

Axis-0 spesifiserer kolonnemessig beregning og Axis = 1 spesifiserer radmessig beregning.

Eksempel 1
I dette eksemplet vil vi returnere den maksimale verdien på tvers av hver rad.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#Perform Max () Aggregation Operation Row Wise
trykk (pyspark_pandas.Maks (akse = 1))

Produksjon

0 100
1 92
2 98
3 97
4 87
DTTYPE: INT64

Vi kan se at maksimal () aggregering utføres over hver rad.

Som, første rad - maksimalt (90.100.91) = 100

Eksempel 2
I dette eksemplet vil vi returnere maksimalverdien over hver kolonne.

#import pandaer fra pyspark -modulen
Fra Pyspark Import Pandas
#Create DataFrame fra Pandas Pyspark
pyspark_pandas = pandas.DataFrame ('Student_lastname': ['Manasa', 'Chamundi', 'Lehara', 'Kapila', 'Hyna'], 'Mark1': [90,78,90,54,67], 'Mark2': [ 100,67,96,89,77], 'Mark3': [91,92,98,97,87])
#Perform Max () Aggregation Operation Column Wise
trykk (pyspark_pandas.maks (akse = 0))

Produksjon

Mark1 90
Mark2 100
Mark3 98
DTTYPE: INT64

Vi kan se at maksimal () aggregering utføres over hver kolonne.

Som for Mark1 -kolonnen - Max (90,78,90,54,67) = 90.

Konklusjon

I denne Pyspark Pandas DataFrame -opplæringen så vi fire forskjellige aggregeringsfunksjoner utført på DataFrame. Det er mulig å beregne over rad og kolonnemessig med akseparametere. sum () vil returnere total sum, avg () brukes til å returnere totalt gjennomsnitt, min () brukes til å returnere minimumsverdi og maks () vil returnere maksimal verdi.