Pyspark - sammel_list und sammel_set

Pyspark - sammel_list und sammel_set
In Python ist PySpark ein Spark -Modul, mit dem eine ähnliche Art von Verarbeitung wie Spark mit DataFrame bereitgestellt wird.

Wir werden sammeln und sammeln und collect_set () in pyspark DataFrame -Funktionen besprechen.

Bevor wir zu diesen Funktionen wechseln, werden wir PYSPARK -Datenframe erstellen

Beispiel:

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

#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
student.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': 2.79, 'Gewicht': 28, 'Adresse': 'Hyd',
'Rollno': '005', 'Name': 'Sridevi', 'Alter': 9, 'Höhe': 5.59, 'Gewicht': 54, 'Adresse': 'Hyd']
# Erstellen Sie den Datenrahmen
df = spark_app.erstellteataframe (Studenten1)
# DataFrame anzeigen
df.zeigen()

Ausgang:

Pyspark - sammel_list ()

Collect_List () -Methode wird verwendet, um die Daten aus den PYSPARK -Datenrahmenspalten zu erhalten und die Werte im Zeilenformat zurückzugeben. Es wird alle Werte zusammen mit Duplikaten zurückgeben. Wir müssen diese Methode jedoch aus PYSPARK importieren.sql.Funktionsmodul.

Wir können diese Methode verwenden, um die gesammelten Daten in Form einer Zeile anzuzeigen.

Syntax:

Datenrahmen.select ("collect_list (" Spalte "))

Wo:

  1. DataFrame ist der Eingabe -PYSPARK -Datenrahmen
  2. Die Spalte ist der Spaltenname, in dem Collect_List () angewendet wird

Beispiel 1:

In diesem Beispiel sammeln wir Daten aus der Adressspalte und zeigen die Werte mit sammel () Methode an.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#import Collect_List -Funktion
aus pysspark.sql.Funktionen import collect_list
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie Studentendaten mit 5 Zeilen und 6 Attributen
student.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.erstellteataframe (Studenten1)
# Collect_List unter der Adresse
df.select (collect_list ("Adresse")).sammeln()

Ausgang:

[Row (sammel_list (Adresse) = ['guntur', 'hyd', 'patna', 'hyd', 'hyd']]]]

Beispiel 2:

In diesem Beispiel sammeln wir Daten aus Größe und Gewichtsspalten und zeigen die Werte mit Collect () -Methode an.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#import Collect_List -Funktion
aus pysspark.sql.Funktionen import collect_list
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie Studentendaten mit 5 Zeilen und 6 Attributen
student.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.erstellteataframe (Studenten1)
# Collect_List über Spalten von Größe und Gewicht
df.select (collect_list ("Höhe"), collect_list ("Gewicht")).sammeln()

Ausgang:

[Row (sammel_list (Höhe) = [5.79, 3.79, 2.79, 3.69, 5.59], sammel_list (Gewicht) = [67, 34, 17, 28, 54])]

PYSPARK - sammeln_set ()

Collect_set () -Methode wird verwendet, um die Daten aus den PYSPARK -Datenrahmenspalten zu erhalten und die Werte im Zeilenformat zurückzugeben. Es gibt alle Werte ohne Duplikate zurück.

Wir können diese Methode verwenden, um die gesammelten Daten in Form einer Zeile anzuzeigen. Wir müssen diese Methode jedoch aus PYSPARK importieren.sql.Funktionsmodul.

Syntax:

Datenrahmen.select ("sammeln_set (" Spalte "))

Wo:

  1. DataFrame ist der Eingabe -PYSPARK -Datenrahmen
  2. Die Spalte ist der Spaltenname, in dem Collect_List () angewendet wird

Beispiel 1:

In diesem Beispiel sammeln wir Daten aus der Adressspalte und zeigen die Werte mit sammel () Methode an.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#import Collect_set -Funktion
aus pysspark.sql.Funktionen import collect_set
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie Studentendaten mit 5 Zeilen und 6 Attributen
student.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.erstellteataframe (Studenten1)
# Collect_set an der Adresse
df.select (collect_set ("Adresse")).sammeln()

Ausgang:

[Row (sammel_set (Adresse) = ['hyd', 'guntur', 'patna'])]]

Beispiel 2:

In diesem Beispiel sammeln wir Daten aus Größe und Gewichtsspalten und zeigen die Werte mit Collect () -Methode an.

#Amportieren Sie das PYSPARK -Modul
pysspark importieren
#import SparkSession für die Erstellung einer Sitzung
aus pysspark.SQL Import SparkSession
#import Collect_set -Funktion
aus pysspark.sql.Funktionen import collect_set
#create eine App namens LinuxHint
Spark_app = SparkSession.Erbauer.AppName ('LinuxHint').Getorcreate ()
# Erstellen Sie Studentendaten mit 5 Zeilen und 6 Attributen
student.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.erstellteataframe (Studenten1)
# Collect_set auf Größe und Gewichtsspalten
df.select (collect_set ("Höhe"), collect_list ("Gewicht")).sammeln()

Ausgang:

[Row (sammel_set (Höhe) = [5.59, 3.69, 2.79, 5.79, 3.79], sammel_list (Gewicht) = [67, 34, 17, 28, 54])]

Abschluss

Wir haben gesehen. Aus diesen Methoden beobachteten wir, dass Collect_set () Duplikate nicht erlaubt, sondern sammel_list () doppelte Werte zulassen.