Pyspark - Drop, Drop Column

Pyspark - Drop, Drop Column
I Python er Pyspark en Spark -modul som brukes til å gi en lignende type prosessering som Spark ved hjelp av DataFrame. slipp () i pyspark brukes til å fjerne kolonnene fra dataaframe. Ved å bruke Drop () kan vi fjerne mer enn en kolonne om gangen i Pyspark DataFrame. Vi kan slippe kolonnene fra DataFrame på tre måter. Før det må vi lage Pyspark DataFrame for demonstrasjon.

Eksempel:

Vi vil lage en DataFrame med 5 rader og 6 kolonner og vise den ved hjelp av Show () -metoden.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#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:

Vis nå DataFrame -skjemaet ved hjelp av Printschema () -metoden for å sjekke kolonnene før du fjerner kolonnene.

Denne metoden vil returnere kolonnenavnene sammen med datatypen deres.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#Import tellingsfunksjonen
Fra Pyspark.SQL.Funksjoner importtall
#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 skjemaet
df.Printschema ()

Produksjon:

rot
|- Adresse: streng (nullable = true)
|- Alder: Lang (Nullable = True)
|- Høyde: dobbelt (nullable = true)
|- Navn: String (Nullable = True)
|- RollNo: String (Nullable = True)
|- Vekt: Lang (Nullable = True)

Metode -1: Slipp enkeltkolonne

Vi vil bare fjerne en kolonne om gangen ved å bruke Drop () -funksjonen ved å passere kolonnen i slippfunksjonen.

Syntaks:

df.slipp ('kolonne_navn')

Hvor,

  1. DF er inngangen Pyspark DataFrame
  2. Kolonne_navn er kolonnen som skal droppes.

Eksempel :

I dette eksemplet vil vi slippe navnekolonnen og vise den resulterende DataFrame og skjemaet.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#Import tellingsfunksjonen
Fra Pyspark.SQL.Funksjoner importtall
#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)
#Drop Name -kolonne
df = df.slipp ('navn')
#Check DataFrame
trykk (df.samle inn())
#Display skjemaet
#etter fjerning av navnekolonnen
df.Printschema ()

Produksjon:

[Rad (adresse = 'guntur', alder = 23, høyde = 5.79, rollno = '001', vekt = 67), rad (adresse = 'hyd', alder = 16, høyde = 3.79, rollno = '002', vekt = 34), rad (adresse = 'patna', alder = 7, høyde = 2.79, rollno = '003', vekt = 17), rad (adresse = 'hyd', alder = 9, høyde = 3.69, rollno = '004', vekt = 28), rad (adresse = 'hyd', alder = 37, høyde = 5.59, rollno = '005', vekt = 54)]
rot
|- Adresse: streng (nullable = true)
|- Alder: Lang (Nullable = True)
|- Høyde: dobbelt (nullable = true)
|- RollNo: String (Nullable = True)
|- Vekt: Lang (Nullable = True)

I eksemplet ovenfor vil vi se at navnekolonnen ikke er til stede i DataFrame

Metode - 2: Drop mutiple kolonner

Vi vil bare fjerne en kolonne om gangen ved å bruke Drop () -funksjonen ved å passere kolonnen i slippfunksjonen. Hvis vi må fjerne flere kolonner, må vi legge til * før kolonnenavn som skal fjernes inni ().

Syntaks:

df.slipp (*('Column_name', 'Column_name',…, 'Column_name')))

Hvor,

  1. DF er inngangen Pyspark DataFrame
  2. Kolonne_navn er kolonnen som skal droppes.

Eksempel:

I dette eksemplet vil vi slippe navn, høyde og vektkolonner og vise den resulterende dataframet sammen med skjemaet.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#Import tellingsfunksjonen
Fra Pyspark.SQL.Funksjoner importtall
#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)
#drop navn, høyde og vektkolonne
df = df.slipp (*('navn', 'høyde', 'vekt'))
#Check DataFrame
trykk (df.samle inn())
#Display skjemaet
#etter fjerning av navnekolonnen
df.Printschema ()

Produksjon:

[Rad (adresse = 'guntur', alder = 23, rollno = '001'), rad (adresse = 'hyd', alder = 16, rollno = '002'), rad (adresse = 'patna', alder = 7 , rollno = '003'), rad (adresse = 'hyd', alder = 9, rollno = '004'), rad (adresse = 'hyd', alder = 37, rollno = '005')]
rot
|- Adresse: streng (nullable = true)
|- Alder: Lang (Nullable = True)
|- RollNo: String (Nullable = True)

I eksemplet ovenfor vil vi se at navn, høyde og vektkolonner ikke er til stede i DataFrame.

Metode - 3: Drop mutiple kolonner fra en liste

Vi vil bare fjerne en kolonne om gangen ved å bruke Drop () -funksjonen ved å passere kolonnen i slippfunksjonen. Hvis vi må fjerne flere kolonner, må vi legge til * før kolonnenavn som skal fjernes inne i en liste - [].

Syntaks:

df.slipp (*liste)

Her vil listen inneholde flere kolonner

liste = (Column_name ',' Column_name ',…,' Column_name ')

Hvor,

  1. DF er inngangen Pyspark DataFrame
  2. Kolonne_navn er kolonnen som skal droppes.

Eksempel:

I dette eksemplet vil vi slippe navn, høyde og vektkolonner som er ført gjennom LIST1 og vise det resulterende DataFrame sammen med skjemaet.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#Import tellingsfunksjonen
Fra Pyspark.SQL.Funksjoner importtall
#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)
#Liste over kolonner
liste1 = ['navn', 'høyde', 'vekt']
#drop kolonner fra listen1
df = df.slipp (*liste1)
#Check DataFrame
trykk (df.samle inn())
#Display skjemaet
#etter fjerning av navnekolonnen
df.Printschema ()

Produksjon:

[Rad (adresse = 'guntur', alder = 23, rollno = '001'), rad (adresse = 'hyd', alder = 16, rollno = '002'), rad (adresse = 'patna', alder = 7 , rollno = '003'), rad (adresse = 'hyd', alder = 9, rollno = '004'), rad (adresse = 'hyd', alder = 37, rollno = '005')]
rot
|- Adresse: streng (nullable = true)
|- Alder: Lang (Nullable = True)
|- RollNo: String (Nullable = True)

I eksemplet ovenfor vil vi se at navn, høyde og vektkolonner ikke er til stede i DataFrame.

Konklusjon:

Vi diskuterte hvordan du slipper kolonnene ved hjelp av Drop () -funksjonen, og vi har også diskutert hvordan du fjerner flere kolonner om gangen med dråpe ved å passere en liste over kolonner og passere flere kolonner.