In Pyspark DataFrame, è possibile restituire gli elementi minimi in due o più colonne.
PysPark supporta la funzione minimo (), che viene utilizzata per trovare i meno valori in più colonne su tutte le righe in un Pyspark RDD o un Frame dati PysPark.
È disponibile in pyspark.SQL.funzioni modulo.
Sintassi
dataframe_obj.Seleziona (minimo (dataframe_obj.Column1, dataframe_obj.colonna2, ...))
Parametro:
Prende le colonne come parametri.
Possiamo accedere alle colonne usando il '.'Operatore (colonna1, colonna2, rappresenta i nomi della colonna).
Dati
Qui, creeremo un frame dati pyspark che ha 5 colonne: ["soggetto_id", "nome", "age", "tecnologia1", "tecnologia2"] con 10 righe.
Importare pyspark
da pyspark.SQL Importazione di importazione
Spark_app = SparkSession.costruttore.nome dell'applicazione('_').getOrCreate ()
Studenti = [(4, "Sravan", 23, "Php", "Test"),
(4, "Sravan", 23, "Php", "Test"),
(46, "Mounika", 22, ".Net ',' html '),
(4, "Deepika", 21, "Oracle", "HTML"),
(46, "Mounika", 22, "Oracle", "Test"),
(12, "Chandrika", 22, "Hadoop", "C#"),
(12, "Chandrika", 22, "Oracle", "Test"),
(4, "Sravan", 23, "Oracle", "C#"),
(4, "Deepika", 21, "Php", "C#"),
(46, "Mounika", 22, ".Net ',' test ')
"
DataFrame_obj = Spark_app.CreateAtaFrame (Students, ['soggetto_id', 'name', 'age', 'technology1', 'technology2'])
print ("---------- DataFrame ----------")
dataframe_obj.spettacolo()
Produzione:
Ora vedremo gli esempi per restituire i minimi valori in due o più colonne dal precedente telaio di dati.
Esempio 1
Quindi, abbiamo creato il telaio dati precedente. Ora restituiremo i meno valori da soggetto_id E età colonne.
# Importa la funzione minima dal modulo - Pyspark.SQL.funzioni
da pyspark.SQL.funzioni importa meno
#compare le colonne - soggetto_id e età e restituire i valori più bassi in ogni riga.
dataframe_obj.Seleziona (DataFrame_Obj.soggetto_id, dataframe_obj.età, minimo (dataframe_obj.soggetto_id, dataframe_obj.età)).spettacolo()
Produzione:
Spiegazione
Puoi confrontare i valori di due colonne in ogni riga.
minimo (4,23) - 4
minimo (4,23) - 4
minimo (46,22) -22
minimo (4,21) - 4
minimo (46,22) - 22
minimo (12,22) - 12
minimo (12,22) - 12
minimo (4,23) - 4
minimo (4,21) - 4
minimo (46,22) - 22.
Esempio 2
Abbiamo creato il precedente telaio di dati. Ora restituiremo i meno valori da Nome, Technology1, E Tecnologia2 colonne.
# Importa la funzione minima dal modulo - Pyspark.SQL.funzioni
da pyspark.SQL.funzioni importa meno
#compare le colonne - nome, tecnologia1, tecnologia2 ed età e restituire i valori più bassi in ogni riga.
dataframe_obj.Seleziona (DataFrame_Obj.Nome, dataframe_obj.Technology1, dataframe_obj.Tecnologia2,
minimo (dataframe_obj.Nome, dataframe_obj.Technology1, dataframe_obj.tecnologia2)).spettacolo()
Produzione:
Qui, le stringhe vengono confrontate in base ai valori ASCII:
minimo (Sravan, PHP, test) - PHP
minimo (Sravan, PHP, test) - PHP
minimo (Mounika, .Net, html) - .NETTO
minimo (Deepika, Oracle, HTML) - HTML
minimo (Mounika, Oracle, Test) - Oracle
minimo (Chandrika, Hadoop, C#) - C#
minimo (Chandrika, Oracle, Test) - Oracle
minimo (Sravan, Oracle, C#) - C#
minimo (Deepika, PHP, C#) - C#
minimo (Mounika,.Net, test) -.NETTO.
Intero codice
importare pyspark
da pyspark.SQL Importazione di importazione
Spark_app = SparkSession.costruttore.nome dell'applicazione('_').getOrCreate ()
Studenti = [(4, "Sravan", 23, "Php", "Test"),
(4, "Sravan", 23, "Php", "Test"),
(46, "Mounika", 22, ".Net ',' html '),
(4, "Deepika", 21, "Oracle", "HTML"),
(46, "Mounika", 22, "Oracle", "Test"),
(12, "Chandrika", 22, "Hadoop", "C#"),
(12, "Chandrika", 22, "Oracle", "Test"),
(4, "Sravan", 23, "Oracle", "C#"),
(4, "Deepika", 21, "Php", "C#"),
(46, "Mounika", 22, ".Net ',' test ')
"
DataFrame_obj = Spark_app.CreateAtaFrame (Students, ['soggetto_id', 'name', 'age', 'technology1', 'technology2'])
print ("---------- DataFrame ----------")
dataframe_obj.spettacolo()
# Importa la funzione minima dal modulo - Pyspark.SQL.funzioni
da pyspark.SQL.funzioni importa meno
#compare le colonne - soggetto_id e età e restituire i valori più bassi in ogni riga.
dataframe_obj.Seleziona (DataFrame_Obj.soggetto_id, dataframe_obj.età, minimo (dataframe_obj.soggetto_id, dataframe_obj.età)).spettacolo()
#compare le colonne - nome, tecnologia1, tecnologia2 ed età e restituire i valori più bassi in ogni riga.
dataframe_obj.Seleziona (DataFrame_Obj.Nome, dataframe_obj.Technology1, dataframe_obj.Tecnologia2,
minimo (dataframe_obj.Nome, dataframe_obj.Technology1, dataframe_obj.tecnologia2)).spettacolo()
Conclusione
La funzione minima () viene utilizzata per trovare i valori più bassi in più colonne su tutte le righe in un Pyspark RDD o un Frame di dati PysPark. Confronta le colonne con tipi di dati simili. Altrimenti, aumenterà l'eccezione dell'analisi. Le espressioni dovrebbero avere tutte lo stesso tipo.