PYSPARK Translate & Overlay

PYSPARK Translate & Overlay
„In Python ist PySpark ein Spark -Modul, mit dem eine ähnliche Art von Verarbeitung wie Spark unter Verwendung von DataFrame bereitgestellt wird.

Wir werden zwei Funktionen diskutieren: Translate () und Overlay () in pyspark.

Lassen Sie uns es nacheinander besprechen. Vorher müssen wir einen PYSPark -Datenframe zur Demonstration erstellen.”

Beispiel

Wir erstellen einen Datenrahmen mit 5 Zeilen und 6 Spalten und zeigen ihn mit der Messe () -Methode an.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie Studentendaten mit 5 Zeilen und 6 Attributen
Studenten = ['Rollno': '001', 'Name': 'Sravan', 'Alter': 23, 'Höhe': 5.79, 'Gewicht': 67, 'Adresse': 'Guntur',
'Rollno': '002', 'Name': 'Ojaswi', 'Alter': 16, 'Höhe': 3.79, 'Gewicht': 34, 'Adresse': 'Hyd',
'Rollno': '003', 'Name': 'Gnanesh Chowdary', 'Alter': 7, 'Höhe': 2.79, 'Gewicht': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Name': 'Rohith', 'Alter': 9, 'Höhe': 3.69, 'Gewicht': 28, 'Adresse': 'Hyd',
'Rollno': '005', 'Name': 'Sridevi', 'Age': 37, 'Höhe': 5.59, 'Gewicht': 54, 'Adresse': 'Hyd']
# Erstellen Sie den Datenrahmen
df = spark_app.Createdataframe (Studenten)
#Display DataFrame
df.zeigen()

Ausgang:

Pyspark translate ()

translate () wird verwendet, um Zeichenfolgen im PYSPARK -Datenframe -Spaltenzeichen durch Zeichen zu ersetzen. Wir müssen die Zeichen in einer Zeichenfolge angeben, die durch einige andere Zeichen ersetzt werden soll. Es dauert drei Parameter.

Syntax:

Translate (Spalte, 'eURS_characters', 'Repacing_characters')

Wo,

  1. Die Spalte ist der Name der Spalte, in der die Zeichen in dieser Spalte ersetzt werden.
  2. Die Zeichen sind die in den Zeichenfolgen der angegebenen Spalte vorhandenen Zeichen.
  3. Ersetzen_Characters sind die Zeichen.

Notiz - Die Anzahl der Zeichen in den aktuellen _characters muss der Anzahl der Ersatzteile entsprechen. Characters.

translate () kann mit der Methode withColumn () verwendet werden.

Gesamtsyntax:

Datenrahmen.WithColumn (Spalte, Übersetzer (Spalte, 'true_characters', 'repacing_characters'))

Beispiel 1

In diesem Beispiel übersetzen wir die Charaktere - Gunhy auf @$%^& in der Adressspalte.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#import übersetzt aus pyspark.sql.Funktionen
aus pysspark.sql.Funktionen importieren übersetzen
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie Studentendaten mit 5 Zeilen und 6 Attributen
Studenten = ['Rollno': '001', 'Name': 'Sravan', 'Alter': 23, 'Höhe': 5.79, 'Gewicht': 67, 'Adresse': 'Guntur',
'Rollno': '002', 'Name': 'Ojaswi', 'Alter': 16, 'Höhe': 3.79, 'Gewicht': 34, 'Adresse': 'Hyd',
'Rollno': '003', 'Name': 'Gnanesh Chowdary', 'Alter': 7, 'Höhe': 2.79, 'Gewicht': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Name': 'Rohith', 'Alter': 9, 'Höhe': 3.69, 'Gewicht': 28, 'Adresse': 'Hyd',
'Rollno': '005', 'Name': 'Sridevi', 'Age': 37, 'Höhe': 5.59, 'Gewicht': 54, 'Adresse': 'Hyd']
# Erstellen Sie den Datenrahmen
df = spark_app.Createdataframe (Studenten)
#Translate die Charaktere - Gunhy auf @$%^&
df.WithColumn ('Adresse', übersetzen ('Adresse', 'Gunhy', '@$%^&')).zeigen()

Ausgang:

Wir können das in der Adressspalte sehen - die Strings, die enthalten

  1. g wird auf @ übersetzt
  2. u wird auf $ übersetzt
  3. n wird auf % übersetzt
  4. H wird übersetzt auf ^
  5. y wird übersetzt in &

Beispiel 2

In diesem Beispiel übersetzen wir die Zeichen - Jaswi auf 56434 in der Spalte Name.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#import übersetzt aus pyspark.sql.Funktionen
aus pysspark.sql.Funktionen importieren übersetzen
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie Studentendaten mit 5 Zeilen und 6 Attributen
Studenten = ['Rollno': '001', 'Name': 'Sravan', 'Alter': 23, 'Höhe': 5.79, 'Gewicht': 67, 'Adresse': 'Guntur',
'Rollno': '002', 'Name': 'Ojaswi', 'Alter': 16, 'Höhe': 3.79, 'Gewicht': 34, 'Adresse': 'Hyd',
'Rollno': '003', 'Name': 'Gnanesh Chowdary', 'Alter': 7, 'Höhe': 2.79, 'Gewicht': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Name': 'Rohith', 'Alter': 9, 'Höhe': 3.69, 'Gewicht': 28, 'Adresse': 'Hyd',
'Rollno': '005', 'Name': 'Sridevi', 'Age': 37, 'Höhe': 5.59, 'Gewicht': 54, 'Adresse': 'Hyd']
# Erstellen Sie den Datenrahmen
df = spark_app.Createdataframe (Studenten)
#Translate die Zeichen - Jaswi bis 56434 in der Spalte Name
df.withColumn ('name', übersetzer ('name', 'jaswi', '56434')).zeigen()

Ausgang:

Wir können das in der Spalte Name - die Strings, die enthalten, sehen

  1. J wird übersetzt auf 5
  2. a wird auf 6 übersetzt
  3. S wird in 4 übersetzt
  4. W wird auf 3 übersetzt
  5. Ich werde in 4 übersetzt

Pyspark Overlay ()

Overlay () wird verwendet, um Werte in einer bestimmten Spalte durch andere Spaltenwerte zu ersetzen. Es dauert drei Parameter. Es kann mit einer Auswahlklausel verwendet werden.

Syntax:

Overlay (ersetzt_column, ersetzt_column, Position)

Wo,

  1. ersetztes_Column ist die Spalte, in der Werte ersetzt werden.
  2. Ersetzen_Column ist die Spalte, in der sie die Werte in einer Spalte ersetzt ersetzt hat.
  3. Die Position wird verwendet, um die Position oder den Speicherort in ersetztem_column so anzugeben.

Notiz - Wenn alle Zeichen in Werten in ersetztem_column aus der nächsten Position ersetzt werden, werden ersetzte_Column -Zeichen angezeigt.

Gesamtsyntax:

Datenrahmen.Select (Overlay (ersetzt_column, ersetzt_column, Position)))

Beispiel

In diesem Beispiel werden wir Werte in ersetzen

  1. Name der Namensspalte mit dem Alter ab dem 4. Zeichen in der Spalte Name
  2. Rollno -Spalte mit Namen vom 2. Zeichen
#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#import Overlay von pyspark.sql.Funktionen
aus pysspark.sql.Funktionen importieren Overlay
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie Studentendaten mit 5 Zeilen und 6 Attributen
Studenten = ['Rollno': '001', 'Name': 'Sravan', 'Alter': 23, 'Höhe': 5.79, 'Gewicht': 67, 'Adresse': 'Guntur',
'Rollno': '002', 'Name': 'Ojaswi', 'Alter': 16, 'Höhe': 3.79, 'Gewicht': 34, 'Adresse': 'Hyd',
'Rollno': '003', 'Name': 'Gnanesh Chowdary', 'Alter': 7, 'Höhe': 2.79, 'Gewicht': 17, 'Adresse': 'Patna',
'Rollno': '004', 'Name': 'Rohith', 'Alter': 9, 'Höhe': 3.69, 'Gewicht': 28, 'Adresse': 'Hyd',
'Rollno': '005', 'Name': 'Sridevi', 'Age': 37, 'Höhe': 5.59, 'Gewicht': 54, 'Adresse': 'Hyd']
# Erstellen Sie den Datenrahmen
df = spark_app.Createdataframe (Studenten)
#Replace -Werte in der Namensspalte mit Alter ab dem 4. Zeichen
df.Select (Overlay ("Name", "Alter", 4)).zeigen()
#Replace -Werte in der Rollno -Spalte mit Namen aus dem 2. Zeichen
df.Select (Overlay ("Rollno", "Name", 2)).zeigen()

Ausgang:

Aus dieser Ausgabe,

  1. Die Zeichen in der Altersspalte werden in der Spalte Name aus der 4. Position jedes Wertes ersetzt, und der Rest der Zeichen ist in der Spalte Name gleich geblieben.
  2. Die Zeichen in der Spalte der Namen werden in der Spalte Rollno aus der 4. Position jedes Wertes ersetzt, und der Rest der Zeichen hat nicht in der Spalte Rollno geführt, da die Gesamtzahl der Zeichen in Rollno -Spaltenwerten geringer ist als die Spaltenwerte der Namensname. Deshalb werden Namensspaltenwerte besetzt.

Abschluss

Aus diesem Tutorial haben wir gesehen.translate () wird verwendet, um Zeichenfolgen im PYSPARK -Datenframe -Spaltenzeichen durch Zeichen zu ersetzen. Wir müssen die Zeichen in einer Zeichenfolge angeben, die durch einige andere Zeichen ersetzt werden soll. Overlay () wird verwendet, um Werte in einer bestimmten Spalte durch andere Spaltenwerte zu ersetzen.