Itererer over rader og kolonner i pyspark dataframe

Itererer over rader og kolonner i pyspark dataframe

I Python er Pyspark en Spark -modul som brukes til å gi en lignende type prosessering som Spark ved hjelp av DataFrame.

Vi kan krysse Pyspark DataFrame gjennom rader og kolonner ved å bruke:

  1. samle inn()
  2. plukke ut()
  3. Iterrows ()

Før vi flytter til disse, vil vi lage Pyspark DataFrame.

Eksempel:

Her skal vi lage Pyspark DataFrame med 5 rader og 6 kolonner.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import col -funksjonen
Fra Pyspark.SQL.Funksjoner importerer col
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
# Lag studentdata med 5 rader og 6 attributter
Studenter = [
'Rollno': '001', 'Navn': 'Sravan', 'Age': 23, 'Height': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16, 'Height': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7, 'Height': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9, 'Height': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37, 'Height': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
#Display DataFrame
df.forestilling()

Produksjon:

samle inn()

Denne metoden brukes til å iterere kolonnene i den gitte Pyspark DataFrame. Det kan brukes med for loop og tar kolonnenavn gjennom iteratoren for å iterere kolonner. Til slutt vil den vise radene i henhold til de spesifiserte kolonnene.

Syntaks:

for ROW_ITERATOR I DATAFRAME.samle inn():
print (row_iterator ['kolonne'], .. .)

Hvor,

  1. DataFrame er inngangen Pyspark DataFrame.
  2. Kolonnen er kolonnenavnet i Pyspark DataFrame.
  3. ROW_ITERATOR er iteratorvariabelen som brukes til å iterere radverdier i den spesifiserte kolonnen.

Eksempel 1:

I dette eksemplet itererer vi rader fra rollno, høyde og adressekolonner fra ovennevnte Pyspark DataFrame.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import col -funksjonen
Fra Pyspark.SQL.Funksjoner importerer col
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
# Lag studentdata med 5 rader og 6 attributter
Studenter = [
'Rollno': '001', 'Navn': 'Sravan', 'Age': 23, 'Height': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16, 'Height': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7, 'Height': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9, 'Height': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37, 'Height': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
# itererer over rollno, høyde og adressekolonner
for ROW_ITERATOR I DF.samle inn():
print (row_iterator ['rollno'], row_iterator ['høyde'], row_iterator ['adresse'])

Produksjon:

001 5.79 Guntur
002 3.79 Hyd
003 2.79 Patna
004 3.69 Hyd
005 5.59 Hyd

Eksempel 2:

I dette eksemplet itererer vi rader fra navnekolonnen fra ovennevnte Pyspark DataFrame.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import col -funksjonen
Fra Pyspark.SQL.Funksjoner importerer col
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
# Lag studentdata med 5 rader og 6 attributter
Studenter = [
'Rollno': '001', 'Navn': 'Sravan', 'Age': 23, 'Height': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16, 'Height': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7, 'Height': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9, 'Height': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37, 'Height': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
# itererer over navnekolonnen
for ROW_ITERATOR I DF.samle inn():
print (row_iterator ['name'])

Produksjon:

Sravan
Ojaswi
Gnanesh Chowdary
Rohith
Sridevi

plukke ut()

Denne metoden brukes til å iterere kolonnene i den gitte Pyspark DataFrame. Den kan brukes med Collect () -metode og tar kolonne. Til slutt vil den vise radene i henhold til de spesifiserte kolonnene.

Syntaks:

Dataramme.Velg ("Kolonne", ...).samle inn()

Hvor,

  1. DataFrame er inngangen Pyspark DataFrame.
  2. Kolonnen er kolonnenavnet i Pyspark DataFrame.

Eksempel 1:

I dette eksemplet itererer vi rader fra Rollno og Navn -kolonnen fra ovennevnte Pyspark DataFrame.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import col -funksjonen
Fra Pyspark.SQL.Funksjoner importerer col
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
# Lag studentdata med 5 rader og 6 attributter
Studenter = [
'Rollno': '001', 'Navn': 'Sravan', 'Age': 23, 'Height': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16, 'Height': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7, 'Height': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9, 'Height': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37, 'Height': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
#iterate rollno og navnekolonner
df.Velg ("Rollno", "Navn").samle inn()

Produksjon:

[Rad (rollno = '001', name = 'sravan'),
ROW (ROLLNO = '002', name = 'ojaswi'),
ROW (ROLLNO = '003', name = 'Gnanesh Chowdary'),
ROW (ROLLNO = '004', name = 'Rohith'),
ROW (ROLLNO = '005', name = 'sridevi')]

Eksempel 2:

I dette eksemplet itererer vi rader fra rollno og vektkolonnen fra ovennevnte Pyspark DataFrame.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import col -funksjonen
Fra Pyspark.SQL.Funksjoner importerer col
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
# Lag studentdata med 5 rader og 6 attributter
Studenter = [
'Rollno': '001', 'Navn': 'Sravan', 'Age': 23, 'Height': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16, 'Height': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7, 'Height': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9, 'Height': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37, 'Height': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
#iterate rollno og vektkolonner
df.Velg ("Rollno", "Vekt").samle inn()

Produksjon:

[Rad (rollno = '001', vekt = 67),
Rad (rollno = '002', vekt = 34),
Rad (rollno = '003', vekt = 17),
Rad (rollno = '004', vekt = 28),
ROW (ROLLNO = '005', vekt = 54)]

Iterrows ()

Denne metoden brukes til å iterere kolonnene i den gitte Pyspark DataFrame. Det kan brukes med for loop og tar kolonnenavn gjennom Row Iterator og Index for å iterere kolonner. Til slutt vil den vise radene i henhold til de spesifiserte indeksene. Før det må vi konvertere til pandaer ved bruk av topandas () -metode.

Syntaks:

For indeks, Row_Iterator i DataFrame.Topandas ().Iterrows ():
print (row_iterator [index_value], ...)

Hvor,

  1. DataFrame er inngangen Pyspark DataFrame.
  2. INDEX_VALUE er kolonneindeksposisjonen i Pyspark DataFrame.
  3. ROW_ITERATOR er iteratorvariabelen som brukes til å iterere radverdier i den spesifiserte kolonnen.

Eksempel 1:

I dette eksemplet itererer vi rader fra adressen og høydekolonnene fra ovennevnte Pyspark DataFrame.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import col -funksjonen
Fra Pyspark.SQL.Funksjoner importerer col
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
# Lag studentdata med 5 rader og 6 attributter
Studenter = [
'Rollno': '001', 'Navn': 'Sravan', 'Age': 23, 'Height': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16, 'Height': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7, 'Height': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9, 'Height': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37, 'Height': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
#iterat adresse og høydekolonner
For indeks, ROW_ITERATOR I DF.Topandas ().Iterrows ():
Print (ROW_ITERATOR [0], ROW_ITERATOR [1])

Produksjon:

Guntur 23
hyd 16
Patna 7
hyd 9
hyd 37

Eksempel 2:

I dette eksemplet itererer vi rader fra adressen og navnekolonnene fra ovennevnte Pyspark DataFrame.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import col -funksjonen
Fra Pyspark.SQL.Funksjoner importerer col
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
# Lag studentdata med 5 rader og 6 attributter
Studenter = [
'Rollno': '001', 'Navn': 'Sravan', 'Age': 23, 'Height': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16, 'Height': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7, 'Height': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9, 'Height': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37, 'Height': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
#iterat adresse og navnekolonner
For indeks, ROW_ITERATOR I DF.Topandas ().Iterrows ():
Print (ROW_ITERATOR [0], ROW_ITERATOR [3])

Produksjon:

Guntur Sravan
Hyd Ojaswi
Patna Gnanesh Chowdary
Hyd Rohith
Hyd Sridevi

Konklusjon

I denne opplæringen diskuterte vi hvordan vi kan iterere over rader og kolonner i Pyspark DataFrame. Vi diskuterte tre metoder - Select (), Collect () og Iterrows () med for Loop. Så ved å bruke disse metodene kan vi spesifisere kolonnene som skal itereres gjennom Row Iterator.