Iterare su righe e colonne nel Frame dati Pyspark

Iterare su righe e colonne nel Frame dati Pyspark

In Python, Pyspark è un modulo Spark utilizzato per fornire un tipo di elaborazione simile come Spark utilizzando DataFrame.

Possiamo attraversare il frame dati pyspark tramite righe e colonne usando:

  1. raccogliere()
  2. Selezionare()
  3. iTerrows ()

Prima di passare a questi, creeremo PysPark DataFrame.

Esempio:

Qui, creeremo Pyspark DataFrame con 5 righe e 6 colonne.

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#importa la funzione Col
da pyspark.SQL.Funzioni importanti col
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Studenti = [
'rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#display il frame dati
df.spettacolo()

Produzione:

raccogliere()

Questo metodo viene utilizzato per iterare le colonne nel determinato dati Pyspark. Può essere usato con per loop e prende i nomi delle colonne attraverso l'iteratore per iterare colonne. Infine, visualizzerà le righe secondo le colonne specificate.

Sintassi:

per row_iterator in dataframe.raccogliere():
Stampa (row_iterator ['colonna'], .. .)

Dove,

  1. DataFrame è il Frame dati Pyspark input.
  2. La colonna è il nome della colonna nel frame dati Pyspark.
  3. Row_iterator è la variabile iteratore utilizzata per iterare i valori delle righe nella colonna specificata.

Esempio 1:

In questo esempio, stiamo iterando le righe dalle colonne Rollno, altezza e indirizzi da Pyspark DataFrame sopra.

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#importa la funzione Col
da pyspark.SQL.Funzioni importanti col
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Studenti = [
'rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# iterare su rollno, altezza e colonne di indirizzi
per row_iterator in df.raccogliere():
print (row_iterator ['rollno'], row_iterator ['altezza'], row_iterator ['indirizzo'])

Produzione:

001 5.79 Guntur
002 3.79 Hyd
003 2.79 Patna
004 3.69 Hyd
005 5.59 Hyd

Esempio 2:

In questo esempio, stiamo iterando le righe dalla colonna Nome dal Frame dati Pyspark sopra.

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#importa la funzione Col
da pyspark.SQL.Funzioni importanti col
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Studenti = [
'rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# iterare la colonna del nome
per row_iterator in df.raccogliere():
print (row_iterator ['name'])

Produzione:

Sravan
Ojaswi
Gnanesh Chowdary
Rohith
Sridevi

Selezionare()

Questo metodo viene utilizzato per iterare le colonne nel determinato dati Pyspark. Può essere usato con il metodo collect () e prende la colonna. Infine, visualizzerà le righe secondo le colonne specificate.

Sintassi:

DataFrame.Seleziona ("colonna", ...).raccogliere()

Dove,

  1. DataFrame è il Frame dati Pyspark input.
  2. La colonna è il nome della colonna nel frame dati Pyspark.

Esempio 1:

In questo esempio, stiamo iterando le righe dalla colonna Rollno e Name dal Frame dati Pyspark sopra.

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#importa la funzione Col
da pyspark.SQL.Funzioni importanti col
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Studenti = [
'rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#itera rollno e colonne di nome
df.Seleziona ("rollno", "nome").raccogliere()

Produzione:

[Riga (rollno = '001', name = 'sravan'),
Riga (rollno = '002', name = 'ojaswi'),
Riga (rollno = '003', name = 'gnanesh chowdary'),
Riga (rollno = '004', name = 'rohith'),
Riga (rollno = '005', name = 'sridevi')]

Esempio 2:

In questo esempio, stiamo iterando le righe dalla colonna Rollno e Weigh.

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#importa la funzione Col
da pyspark.SQL.Funzioni importanti col
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Studenti = [
'rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#itera rollno e colonne di peso
df.Seleziona ("rollno", "peso").raccogliere()

Produzione:

[Riga (rollno = '001', peso = 67),
Riga (rollno = '002', peso = 34),
Riga (rollno = '003', peso = 17),
Riga (rollno = '004', peso = 28),
Riga (rollno = '005', peso = 54)]

iTerrows ()

Questo metodo viene utilizzato per iterare le colonne nel determinato dati Pyspark. Può essere utilizzato con Loop e prende i nomi delle colonne attraverso l'iteratore di riga e l'indice per iterare le colonne. Infine, visualizzerà le righe secondo gli indici specificati. Prima di allora, dobbiamo convertire in panda usando il metodo Topandas ().

Sintassi:

per indice, row_iterator in dati.topandas ().iTerrows ():
print (row_iterator [index_value], ...)

Dove,

  1. DataFrame è il Frame dati Pyspark input.
  2. INDICE_VALUE è la posizione dell'indice della colonna nel frame dati pyspark.
  3. Row_iterator è la variabile iteratore utilizzata per iterare i valori delle righe nella colonna specificata.

Esempio 1:

In questo esempio, stiamo iterando le righe dall'indirizzo e nelle colonne di altezza dal precedente Pyspark DataFrame.

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#importa la funzione Col
da pyspark.SQL.Funzioni importanti col
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Studenti = [
'rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#itera l'indirizzo e le colonne di altezza
per indice, row_iterator in df.topandas ().iTerrows ():
print (row_iterator [0], row_iterator [1])

Produzione:

Guntur 23
Hyd 16
Patna 7
Hyd 9
Hyd 37

Esempio 2:

In questo esempio, stiamo iterando le righe dalle colonne dell'indirizzo e dei nomi dal Frame dati Pyspark sopra.

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#importa la funzione Col
da pyspark.SQL.Funzioni importanti col
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Studenti = [
'rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#itera l'indirizzo e le colonne di nome
per indice, row_iterator in df.topandas ().iTerrows ():
print (row_iterator [0], row_iterator [3])

Produzione:

Guntur Sravan
Hyd Ojaswi
Patna Gnanesh Chowdary
Hyd Rohith
Hyd Sridevi

Conclusione

In questo tutorial, abbiamo discusso di come iterare su righe e colonne nel frame dati Pyspark. Abbiamo discusso di tre metodi: select (), collect () e iTerrows () con loop. Quindi, usando questi metodi possiamo specificare le colonne da essere iterate tramite la riga iteratore.