Hvordan sammenkoble kolonner i Pyspark DataFrame

Hvordan sammenkoble 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 sammenkoble to eller flere kolonner i en datafram ved hjelp av to metoder. De er concat () og concat_ws (). Dette er metodene som er tilgjengelige i Pyspark.SQL.Funksjonsmodul. Før du skal kjenne disse metodene, la oss lage en Pyspark Dataframe.

Eksempel
I dette eksemplet vil vi lage Pyspark DataFrame med 5 rader og 6 kolonner og vise den ved hjelp av Show () -metoden.

# Importer Pyspark -modulen
Importer pyspark
# Importer SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
# Lag 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,
'Høyde': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16,
'Høyde': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7,
'Høyde': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9,
'Høyde': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37,
'Høyde': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
# Vis DataFrame
df.forestilling()

Produksjon:

Pyspark - Concat ()

Concat () vil bli med to eller flere kolonner i den gitte Pyspark DataFrame og legge til disse verdiene i en ny kolonne.

Ved å bruke Select () -metoden, kan vi se kolonnen sammenkoblet, og ved å bruke en alias () -metode, kan vi navngi den sammenkoblede kolonnen.

Syntaks

Dataramme.Velg (Concat (kolonner, ...).alias ("new_column"))

hvor,

  1. DataFrame er inngangen Pyspark DataFrame
  2. Concat () - Det vil ta flere kolonner å bli sammenkoblet - kolonnen vil bli representert ved å bruke DataFrame.kolonne
  3. new_column er kolonnenavnet for den sammenkoblede kolonnen.

Eksempel 1
I dette eksemplet vil vi sammenkoble høyde- og vektkolonner i en ny kolonne og navngi kolonnen som kroppsindeks. Til slutt vil vi bare velge denne kolonnen og vise DataFrame ved hjelp av Show () -metoden.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import concat -funksjon
Fra Pyspark.SQL.Funksjoner importerer Concat
#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,
'Høyde': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16,
'Høyde': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7,
'Høyde': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9,
'Høyde': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37,
'Høyde': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
# sammenkoblingshøyde og vekt til en ny kolonne som heter - "Body Index"
df.Velg (Concat (DF.Høyde, DF.vekt).alias ("Body Index")).forestilling()

Produksjon:

Eksempel 2
I dette eksemplet vil vi sammenkoble rollno, navn og adressekolonner i en ny kolonne og navngi kolonnen som detaljer. Til slutt vil vi bare velge denne kolonnen og vise DataFrame ved hjelp av Show () -metoden.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import concat -funksjon
Fra Pyspark.SQL.Funksjoner importerer Concat
#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,
'Høyde': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16,
'Høyde': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7,
'Høyde': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9,
'Høyde': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37,
'Høyde': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
# concatenating rollno, navn og adresse til en ny kolonne som heter - "Detaljer"
df.Velg (Concat (DF.Rollno, DF.Navn, DF.adresse).alias ("Detaljer")).forestilling()

Produksjon:

Pyspark - concat_ws ()

Concat_ws () vil bli med to eller flere kolonner i den gitte pyspark dataaframe og legge til disse verdiene i en ny kolonne. Den vil skille hver kolonnes verdier med en separator.

Ved å bruke Select () -metoden, kan vi se kolonnen sammenkoblet, og ved å bruke en alias () -metode, kan vi navngi den sammenkoblede kolonnen.

Syntaks

Dataramme.Velg (Concat (“Separator”, kolonner,…).alias ("new_column"))

hvor,

  1. DataFrame er inngangen Pyspark DataFrame
  2. Concat () - Det vil ta flere kolonner å bli sammenkoblet - kolonnen vil bli representert ved å bruke DataFrame.kolonne
  3. new_column er kolonnenavnet for den sammenkoblede kolonnen.
  4. Separatoren kan være noe som plass, spesiell karakter osv.

Eksempel 1
I dette eksemplet vil vi sammenkoble høyde- og vektkolonner i en ny kolonne og navngi kolonnen som kroppsindeks atskilt med “_.”Til slutt vil vi bare velge denne kolonnen og vise DataFrame ved hjelp av Show () -metoden.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import concat_ws -funksjon
Fra Pyspark.SQL.Funksjoner importerer concat_ws
#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,
'Høyde': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16,
'Høyde': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7,
'Høyde': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9,
'Høyde': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37,
'Høyde': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
# sammenkoblingshøyde og vekt til en ny kolonne som heter - "Body Index"
df.velg (concat_ws ("_", df.Høyde, DF.vekt).alias ("Body Index")).forestilling()

Produksjon:

Eksempel 2
I dette eksemplet vil vi sammenkoble rollno, navn og adressekolonner i en ny kolonne og navngi kolonnen som detaljer atskilt med “***.”Til slutt vil vi bare velge denne kolonnen og vise DataFrame ved hjelp av Show () -metoden.

#import Pyspark -modulen
Importer pyspark
#import SparkSession for å lage en økt
Fra Pyspark.SQL Import SparkSession
#import concat_ws -funksjon
Fra Pyspark.SQL.Funksjoner importerer concat_ws
#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,
'Høyde': 5.79, 'vekt': 67, 'adresse': 'guntur',
'Rollno': '002', 'Navn': 'Ojaswi', 'Age': 16,
'Høyde': 3.79, 'vekt': 34, 'adresse': 'hyd',
'Rollno': '003', 'Navn': 'Gnanesh Chowdary', 'Age': 7,
'Høyde': 2.79, 'Vekt': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Navn': 'Rohith', 'Age': 9,
'Høyde': 3.69, 'vekt': 28, 'adresse': 'hyd',
'Rollno': '005', 'Navn': 'Sridevi', 'Age': 37,
'Høyde': 5.59, 'vekt': 54, 'adresse': 'hyd']]
# Lag DataFrame
df = spark_app.CreateTataFrame (studenter)
# concatenating rollno, navn og adresse til en ny kolonne som heter - "Detaljer"
df.Velg (concat_ws ("***", DF.Rollno, DF.Navn, DF.adresse).alias ("Detaljer")).forestilling()

Produksjon:

Konklusjon

Vi kan sammenkoble to eller flere kolonner ved å bruke concat () og concat_ws () metoder. Hovedforskjellen mellom de to metodene er at vi kan legge til en separator i concat_ws () -metoden.