In Python, Pyspark è un modulo Spark utilizzato per fornire un tipo di elaborazione simile come Spark utilizzando DataFrame. In Pyspark, orderBy () viene utilizzato per disporre le righe nell'ordine di ordinamento/ascendente nel frame dati.
Restituirà il nuovo telaio di dati organizzando le righe nel frame dati esistente.
Creiamo un frame dati pyspark.
Esempio:
In questo esempio, creeremo il Frame dati PysPark con 5 righe e 6 colonne e visualizzano il metodo show ().
#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Students = ['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 DataFrame
df.spettacolo()
Produzione:
Metodo - 1: usando orderBy ()
Qui, stiamo usando la funzione orderBy () per ordinare il frame dati PysPark in base alle colonne. Ci vorranno una o più colonne.
Sintassi:
DataFrame.orderby ("column_name", ..., "column_name")
Qui,
- DataFrame è il Frame dati Pyspark input.
- column_name è la colonna in cui viene applicata l'ordinamento.
Esempio:
In questo esempio, ordineremo il frame dati in base alle colonne di indirizzo e età con la funzione orderby () e visualizzeremo il telaio di dati ordinato utilizzando il metodo collection ().
#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Students = ['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)
# Ordina i dati di dati in base alle colonne di indirizzo e età
# e visualizza il telaio di dati ordinato
df.orderby ("indirizzo", "età").raccogliere()
Produzione:
[Riga (indirizzo = 'guntur', età = 23, altezza = 5.79, name = 'sravan', rollno = '001', peso = 67),
Riga (indirizzo = 'hyd', età = 9, altezza = 3.69, name = 'rohith', rollno = '004', peso = 28),
Riga (indirizzo = 'hyd', età = 16, altezza = 3.79, name = 'ojaswi', rollno = '002', peso = 34),
Riga (indirizzo = 'hyd', età = 37, altezza = 5.59, name = 'sridevi', rollno = '005', peso = 54),
Riga (indirizzo = 'patna', età = 7, altezza = 2.79, nome = 'gnanesh chowdary', rollno = '003', peso = 17)]
Metodo - 2: usando orderBy () con funzione Col
Qui, stiamo usando la funzione orderBy () per ordinare il frame dati PysPark in base alle colonne. Dobbiamo specificare i nomi/i di colonne all'interno della funzione orderby () attraverso la funzione COL. Dobbiamo importare questa funzione da Pyspark.SQL.modulo funzioni. Questo viene utilizzato per leggere una colonna dal Frame dati Pyspark.
Sintassi:
DataFrame.orderby (col ("column_name"), ..., col ("column_name")
Qui,
- DataFrame è il Frame dati Pyspark input.
- column_name è la colonna in cui l'ordinamento viene applicata tramite la funzione col.
Esempio:
In questo esempio, ordineremo il frame dati in base alle colonne di indirizzo e età con la funzione orderby () e visualizzeremo il telaio di dati ordinato utilizzando il metodo collection ().
#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
Students = ['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)
# Ordina i dati di dati in base alle colonne di indirizzo e età
# e visualizza il telaio di dati ordinato
df.orderby (col ("indirizzo"), col ("età").raccogliere()
Produzione:
[Riga (indirizzo = 'guntur', età = 23, altezza = 5.79, name = 'sravan', rollno = '001', peso = 67),
Riga (indirizzo = 'hyd', età = 9, altezza = 3.69, name = 'rohith', rollno = '004', peso = 28),
Riga (indirizzo = 'hyd', età = 16, altezza = 3.79, name = 'ojaswi', rollno = '002', peso = 34),
Riga (indirizzo = 'hyd', età = 37, altezza = 5.59, name = 'sridevi', rollno = '005', peso = 54),
Riga (indirizzo = 'patna', età = 7, altezza = 2.79, nome = 'gnanesh chowdary', rollno = '003', peso = 17)]
Metodo - 3: Utilizzo di orderBy () con l'etichetta DataFrame
Qui, stiamo usando la funzione orderBy () per ordinare il frame dati PysPark in base alle colonne. Dobbiamo specificare i nomi delle colonne/etichette all'interno della funzione orderBy () tramite il nome/etichetta della colonna di dati dati/etichetta.
Sintassi:
DataFrame.OrderBy (DataFrame.column_name,…, data frame.column_name)
Qui,
- DataFrame è il Frame dati Pyspark input.
- column_name è la colonna in cui viene applicata l'ordinamento.
Esempio:
In questo esempio, ordineremo il frame dati in base alle colonne di indirizzo e età con la funzione orderby () e visualizzeremo il telaio di dati ordinato utilizzando il metodo collection ().
#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Students = ['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)
# Ordina i dati di dati in base alle colonne di indirizzo e età
# e visualizza il telaio di dati ordinato
df.Orderby (df.indirizzo, df.età).raccogliere()
Produzione:
[Riga (indirizzo = 'guntur', età = 23, altezza = 5.79, name = 'sravan', rollno = '001', peso = 67),
Riga (indirizzo = 'hyd', età = 9, altezza = 3.69, name = 'rohith', rollno = '004', peso = 28),
Riga (indirizzo = 'hyd', età = 16, altezza = 3.79, name = 'ojaswi', rollno = '002', peso = 34),
Riga (indirizzo = 'hyd', età = 37, altezza = 5.59, name = 'sridevi', rollno = '005', peso = 54),
Riga (indirizzo = 'patna', età = 7, altezza = 2.79, nome = 'gnanesh chowdary', rollno = '003', peso = 17)]
Metodo - 4: Utilizzo di orderBy () con indice di dati
Qui, stiamo usando la funzione orderBy () per ordinare il frame dati PysPark in base alle colonne. Dobbiamo specificare l'indice di colonna/indici all'interno della funzione orderBy () tramite l'indice/posizione della colonna di dati dati. In DataFrame, l'indicizzazione inizia con '0'.
Sintassi:
DataFrame.orderby (dataframe [column_index],…, dataframe [column_index])
Qui,
- DataFrame è il Frame dati Pyspark input.
- column_index è la posizione della colonna in cui viene applicata l'ordinamento.
Esempio:
In questo esempio, ordineremo il frame dati in base alle colonne di indirizzo e età con la funzione orderby () e visualizzeremo il telaio di dati ordinato utilizzando il metodo collection ().
#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Students = ['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)
# Ordina i dati di dati in base alle colonne di indirizzo e età
# e visualizza il telaio di dati ordinato
df.Orderby (df [0], df [1]).raccogliere()
Produzione:
[Riga (indirizzo = 'guntur', età = 23, altezza = 5.79, name = 'sravan', rollno = '001', peso = 67),
Riga (indirizzo = 'hyd', età = 9, altezza = 3.69, name = 'rohith', rollno = '004', peso = 28),
Riga (indirizzo = 'hyd', età = 16, altezza = 3.79, name = 'ojaswi', rollno = '002', peso = 34),
Riga (indirizzo = 'hyd', età = 37, altezza = 5.59, name = 'sridevi', rollno = '005', peso = 54),
Riga (indirizzo = 'patna', età = 7, altezza = 2.79, nome = 'gnanesh chowdary', rollno = '003', peso = 17)]
Conclusione
In questo articolo, discutiamo di come utilizzare la funzione OrderBy () utilizzando quattro scenari sul Frame di dati Pyspark in Python. Infine, siamo arrivati a un punto in cui possiamo ordinare i dati nel Frame dati PysPark in base alle colonne presenti nel frame dati.