PYSPARK - With Column -Methode

PYSPARK - With Column -Methode
In Python ist PySpark ein Spark -Modul, mit dem eine ähnliche Art von Verarbeitung wie Spark mit DataFrame bereitgestellt wird.

WithColumn () in pySpark wird verwendet, um die Operationen in den PYSPARK -Datenrahmenspalten durchzuführen. Die Operationen umfassen

  1. Ändern Sie den Datentyp der Spalte
  2. Ändern Sie die Werte in der Spalte
  3. Fügen Sie eine neue Spalte aus der vorhandenen Spalte hinzu

Bevor wir zu den Methoden wechseln, werden wir PYSPARK -Datenframe erstellen

Beispiel:

Hier erstellen wir einen PYSPark -Datenframe mit 5 Zeilen und 6 Spalten.

#Amportieren Sie das PySpAPRK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#Importieren Sie die Col -Funktion
aus pysspark.sql.Funktionen importieren col
#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 den DataFrame
df.zeigen()

Ausgang:

Ändern Sie den Datentyp der Spalte

Wir können den Datentyp einer bestimmten Spalte mithilfe der Methode WithColumn () ändern.

Syntax:

Datenrahmen.withColumn ("column_name", col ("column_name").Cast ("DataType"))

Parameter:

1. Column_Name ist die Spalte, deren Datentyp geändert wird

2. Col () -Funktion wird verwendet, um den Spaltennamen zu erhalten

3. Cast () wird verwendet, um den Spaltendatenatyp von einem Typ zum anderen zu ändern, indem der Datentyp -Name als Parameter akzeptiert wird. Die Datentypen umfassen String, Ganzzahl, doppelt.

Beispiel:

In diesem Beispiel besteht die Höhe des Float -Datentyps. Wir können es in Ganzzahl ändern, indem wir die obige Methode verwenden und das Schema unter Verwendung der Methode PrintSchema () und DataFrame mithilfe der Methode Collect () anzeigen.

#Amportieren Sie das PySpAPRK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#Importieren Sie die Col -Funktion
aus pysspark.sql.Funktionen importieren col
#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)
#convert Float Type in Ganzzahltyp der Höhe der Höhe
df = df.With Column ("Höhe", col ("Höhe").Cast ("Integer"))
#Display modifizierte DataFrame
drucken (df.sammeln())
#lets zeigen das Schema an
df.printSchema ()

Ausgang:

[Zeile (Adresse = 'Guntur', Alter = 23, Höhe = 5, Name = 'Sravan', Rollno = '001', Gewicht = 67), Row (Adresse = 'Hyd', Alter = 16, Höhe = 3, name = 'ojaswi', rollno = '002', Gewicht = 34), Row (Adresse = 'patna', Alter = 7, Größe = 2, Name = 'Gnanesh Chowdary', Rollno = '003', Gewicht = 17) , Row (address = 'hyd', Alter = 9, Höhe = 3, Name = 'Rohith', Rollno = '004', Gewicht = 28), Row (Adresse = 'Hyd', Alter = 37, Höhe = 5, name = 'sridevi', rollno = '005', Gewicht = 54)]
Wurzel
|- Adresse: String (nullable = true)
|- Alter: lang (nullable = true)
|- Höhe: Ganzzahl (nullable = true)
|- Name: String (nullable = true)
|- rollno: string (nullable = true)
|- Gewicht: lang (nullable = true)

Ändern Sie die Werte in der Spalte

Wir können die Werte einer bestimmten Spalte mithilfe der Methode WithColumn () ändern.

Syntax:

Datenrahmen.withColumn ("column_name", col ("column_name"))

Parameter:

1. Column_Name ist die Spalte, deren Datentyp geändert wird

2. Col () Funktion wird verwendet, um die Werte im Spaltennamen zu ändern

Beispiel:

In diesem Beispiel subtrahieren wir jeden Wert in der Gewichtsspalte um 10.

#Amportieren Sie das PySpAPRK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#Importieren Sie die Col -Funktion
aus pysspark.sql.Funktionen importieren col
#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)
#Decrease jeden Wert in Gewichtsspalte um 10
df = df.With Column ("Gewicht", col ("Gewicht")-10)
#Display modifizierte DataFrame
drucken (df.sammeln())
#lets zeigen das Schema an
df.printSchema ()

Ausgang:

[Zeile (Adresse = 'Guntur', Alter = 23, Höhe = 5.79, name = 'sravan', rollno = '001', Gewicht = 57), Row (Adresse = 'Hyd', Alter = 16, Größe = 3.79, name = 'ojaswi', rollno = '002', Gewicht = 24), Row (Adresse = 'patna', Alter = 7, Größe = 2.79, name = 'gnanesh chowdary', rollno = '003', Gewicht = 7), Zeile (Adresse = 'Hyd', Alter = 9, Größe = 3.69, Name = 'Rohith', Rollno = '004', Gewicht = 18), Zeile (Adresse = 'Hyd', Alter = 37, Größe = 5.59, name = 'sridevi', rollno = '005', Gewicht = 44)]
Wurzel
|- Adresse: String (nullable = true)
|- Alter: lang (nullable = true)
|- Höhe: doppelt (nullable = true)
|- Name: String (nullable = true)
|- rollno: string (nullable = true)
|- Gewicht: lang (nullable = true)

Fügen Sie eine neue Spalte aus der vorhandenen Spalte hinzu

Wir können eine neue Spalte aus einer vorhandenen Spalte mit der Methode WithColumn () hinzufügen.

Syntax:

Datenrahmen.WithColumn ("new_column", col ("column_name"))

Parameter:

1. New_Column ist die Spalte

2. Col () -Funktion wird verwendet, um die Spaltenwerte zum New_Column hinzuzufügen

Beispiel:

In diesem Beispiel wird eine neue Spalte erstellt - "Leistung" und fügen Sie dieser Spalte Werte hinzu, wodurch jeden Wert in der Spalte Gewicht mit 10 multipliziert wird.

#Amportieren Sie das PySpAPRK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#Importieren Sie die Col -Funktion
aus pysspark.sql.Funktionen importieren col
#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)
#Add Spalte mit dem Namen Power
#Aus der Gewichtsspalte multipliziert mit 2
df = df.WithColumn ("Power", col ("Gewicht")* 2)
#Display modifizierte DataFrame
drucken (df.sammeln())
#lets zeigen das Schema an
df.printSchema ()

Ausgang:

[Zeile (Adresse = 'Guntur', Alter = 23, Höhe = 5.79, name = 'sravan', rollno = '001', Gewicht = 67, Power = 134), Row (Adresse = 'Hyd', Alter = 16, Höhe = 3.79, name = 'ojaswi', rollno = '002', Gewicht = 34, Power = 68), Row (Adresse = 'patna', Alter = 7, Höhe = 2.79, name = 'gnanesh chowdary', rollno = '003', Gewicht = 17, Power = 34), Row (Adresse = 'Hyd', Alter = 9, Höhe = 3.69, name = 'Rohith', Rollno = '004', Gewicht = 28, Power = 56), Row (Adresse = 'Hyd', Alter = 37, Höhe = 5.59, name = 'sridevi', rollno = '005', Gewicht = 54, Power = 108)]
Wurzel
|- Adresse: String (nullable = true)
|- Alter: lang (nullable = true)
|- Höhe: doppelt (nullable = true)
|- Name: String (nullable = true)
|- rollno: string (nullable = true)
|- Gewicht: lang (nullable = true)
|- Kraft: lang (nullable = true)

Abschluss:

In diesem Artikel wurde erörtert.