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
- Ändern Sie den Datentyp der Spalte
- Ändern Sie die Werte in der Spalte
- 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.