Pyspark - radklasse

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

Radklasse i Pyspark brukes til å lage rad for Pyspark DataFrame. Vi kan opprette en rad ved å bruke rad () -funksjonen.

Dette er tilgjengelig i Pyspark.SQL -modul. Så vi må importere rad fra denne modulen.

Syntaks:

Rad (kolonne_name = 'verdi', .. .)

Hvor,

  1. Kolonne_navn er kolonnen for Pyspark DataFrame
  2. Verdien er radverdien for en bestemt kolonne

Vi kan spesifisere et hvilket som helst antall kolonner i radklassen.

Hvis vi ønsker å lage flere rader, må vi spesifisere radklassen i en liste atskilt av en kommaoperatør.

Syntaks:

[Rad (kolonne_name = 'verdi', .. .), Rad (kolonne_name = 'verdi', .. .)
,...]

For å lage Pyspark DataFrame fra denne raden, overfører vi bare radlisten til CreateFrame () -metoden.

Hvis vi vil vise Pyspark DataFrame i radformat, må vi bruke Collect () -metoden.

Denne metoden brukes til å få dataene på rad for radformat

Syntaks:

Dataramme.samle inn()

Hvor DataFrame er inngangen Pyspark DataFrame.

Eksempel:

Dette eksemplet vil lage 5 rader ved hjelp av radklassen med 6 kolonner og vise DataFrame ved hjelp av Collect () -metoden.

#import pyspaprk -modulen
Importer pyspark
#import SparkSession for å lage en økt og rad
Fra Pyspark.SQL Import SparkSession, Row
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
#skape rader
ROW_DATA = [ROW (ROLLNO = '001', name = 'Sravan', alder = 23, høyde = 5.79, vekt = 67, adresse = 'guntur'),
ROW (ROLLNO = '002', name = 'Ojaswi', alder = 16, høyde = 3.79, vekt = 34, adresse = 'hyd'),
ROW (ROLLNO = '003', name = 'Gnanesh Chowdary', alder = 7, høyde = 2.79, vekt = 17, adresse = 'Patna'),
ROW (ROLLNO = '004', name = 'Rohith', alder = 9, høyde = 3.69, vekt = 28, adresse = 'hyd'),
ROW (ROLLNO = '005', name = 'Sridevi', alder = 37, høyde = 5.59, vekt = 54, adresse = 'hyd')]
#Create DataFrame fra ROW_DATA
df = spark_app.CreateTataFrame (ROW_DATA)
# Vis DataFrame
#by rader
df.samle inn()

Produksjon:

[ROW (ROLLNO = '001', name = 'Sravan', alder = 23, høyde = 5.79, vekt = 67, adresse = 'guntur'),
ROW (ROLLNO = '002', name = 'Ojaswi', alder = 16, høyde = 3.79, vekt = 34, adresse = 'hyd'),
ROW (ROLLNO = '003', name = 'Gnanesh Chowdary', alder = 7, høyde = 2.79, vekt = 17, adresse = 'Patna'),
ROW (ROLLNO = '004', name = 'Rohith', alder = 9, høyde = 3.69, vekt = 28, adresse = 'hyd'),
ROW (ROLLNO = '005', name = 'Sridevi', alder = 37, høyde = 5.59, vekt = 54, adresse = 'hyd')]

Vi kan også definere kolonnene først og deretter overføre verdiene til radene.

Dette gjøres ved å bruke radnavnet. Vi vil definere kolonnene med radnavn og ved å bruke dette kan vi legge til verdier til raden

Syntaks:

ROW_NAME = ROW (“Column_Name1”, Column_Name2 ”, .. .,”Kolonne_navn n)
[ROW_NAME (Value1, Value2, ..., Valuen), ..., Row_name (Value1, Value2, ..., Valuen)]

Eksempel:

I dette eksemplet skal vi legge til 6 kolonner med radnavn som studenter med navn som "rollno", "navn", "Age", "høyde", "vekt", "adresse" og legge til 5 verdier til denne studentenes rad.

#import pyspaprk -modulen
Importer pyspark
#import SparkSession for å lage en økt og rad
Fra Pyspark.SQL Import SparkSession, Row
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
# Opprett en rad med 6 kolonner
Studenter = rad ("rollno", "navn", "alder", "høyde", "vekt", "adresse")
#skape verdier for radene
ROW_DATA = [Studenter ('001', 'Sravan', 23,5.79,67, 'Guntur'),
Studenter ('002', 'Ojaswi', 16,3.79,34, 'hyd'),
Studenter ('003', 'Gnanesh Chowdary', 7,2.79,17, 'Patna'),
Studenter ('004', 'Rohith', 9,3.69,28, 'hyd'),
Studenter ('005', 'Sridevi', 37,5.59,54, 'hyd')]
#Create DataFrame fra ROW_DATA
df = spark_app.CreateTataFrame (ROW_DATA)
# Vis DataFrame
#by rader
df.samle inn()

Produksjon:

[ROW (ROLLNO = '001', name = 'Sravan', alder = 23, høyde = 5.79, vekt = 67, adresse = 'guntur'),
ROW (ROLLNO = '002', name = 'Ojaswi', alder = 16, høyde = 3.79, vekt = 34, adresse = 'hyd'),
ROW (ROLLNO = '003', name = 'Gnanesh Chowdary', alder = 7, høyde = 2.79, vekt = 17, adresse = 'Patna'),
ROW (ROLLNO = '004', name = 'Rohith', alder = 9, høyde = 3.69, vekt = 28, adresse = 'hyd'),
ROW (ROLLNO = '005', name = 'Sridevi', alder = 37, høyde = 5.59, vekt = 54, adresse = 'hyd')]

Opprette nestet rad

Rad inne i en rad er kjent som nestet rad. Vi kan lage den nestede raden inne i raden ligner på normal radskaping

Syntaks:

[Rad (kolonne_name = rad (kolonne_name = 'verdi', .. .), .. .),
Rad (kolonne_name = rad (kolonne_name = 'verdi', .. .),
...]

Eksempel:

I dette eksemplet vil vi opprette DataFrame som ligner ovenfor, men vi legger til en kolonne som heter fag til hver rad og legger til Java- og PHP -verdier ved hjelp av nestet rad.

#import pyspaprk -modulen
Importer pyspark
#import SparkSession for å lage en økt og rad
Fra Pyspark.SQL Import SparkSession, Row
#Create en app som heter Linuxhint
Spark_app = SparkSession.bygger.AppName ('Linuxhint').getorCreate ()
#skape rader
ROW_DATA = [ROW (ROLLNO = '001', name = 'Sravan', alder = 23, høyde = 5.79, vekt = 67, adresse = 'guntur', emner = rad (emne1 = 'java', emne2 = 'php')),
ROW (ROLLNO = '002', name = 'Ojaswi', alder = 16, høyde = 3.79, vekt = 34, adresse = 'hyd', emner = rad (emne1 = 'java', emne2 = 'php')),
ROW (ROLLNO = '003', name = 'Gnanesh Chowdary', alder = 7, høyde = 2.79, vekt = 17, adresse = 'patna', fag = rad (emne1 = 'java', emne2 = 'php')),
ROW (ROLLNO = '004', name = 'Rohith', alder = 9, høyde = 3.69, vekt = 28, adresse = 'hyd', emner = rad (emne1 = 'java', emne2 = 'php')),
ROW (ROLLNO = '005', name = 'Sridevi', alder = 37, høyde = 5.59, vekt = 54, adresse = 'hyd', emner = rad (emne1 = 'java', emne2 = 'php')]]
#Create DataFrame fra ROW_DATA
df = spark_app.CreateTataFrame (ROW_DATA)
# Vis DataFrame
#by rader
df.samle inn()

Produksjon:

[ROW (ROLLNO = '001', name = 'Sravan', alder = 23, høyde = 5.79, vekt = 67, adresse = 'guntur', emner = rad (emne1 = 'java', emne2 = 'php')),
ROW (ROLLNO = '002', name = 'Ojaswi', alder = 16, høyde = 3.79, vekt = 34, adresse = 'hyd', emner = rad (emne1 = 'java', emne2 = 'php')),
ROW (ROLLNO = '003', name = 'Gnanesh Chowdary', alder = 7, høyde = 2.79, vekt = 17, adresse = 'patna', fag = rad (emne1 = 'java', emne2 = 'php')),
ROW (ROLLNO = '004', name = 'Rohith', alder = 9, høyde = 3.69, vekt = 28, adresse = 'hyd', emner = rad (emne1 = 'java', emne2 = 'php')),
ROW (ROLLNO = '005', name = 'Sridevi', alder = 37, høyde = 5.59, vekt = 54, adresse = 'hyd', emner = rad (emne1 = 'java', emne2 = 'php')]]

Konklusjon:

Denne artikkelen diskuterte radklassen og hvordan du lager Pyspark DataFrame ved hjelp av radklassen. Endelig diskuterte vi nestet radklasse.