Pyspark - Variance_stddev Function

Pyspark - Variance_stddev Function
Dopo aver diviso le righe nel frame dati PysPark, è possibile restituire la varianza e la deviazione standard in ciascuna partizione. Utilizzando alcune funzioni aggregate su una finestra di partizione, è possibile restituire la varianza e la deviazione standard.

Innanzitutto, vedremo come suddividere il frame dati in pyspark.

Partizione

È possibile partizione delle righe nel frame dati utilizzando la funzione della finestra. È disponibile in pyspark.SQL.finestra modulo. Ci sono due passaggi per partizionare le righe in un frame dati pyspark.

Passaggi:

  1. Crea un frame dati pyspark che ha alcuni valori simili in almeno una colonna.
  2. Partizione I dati utilizzando il metodo PartitionBy () disponibile nella funzione Finestra.

Sintassi:

partizione = finestra.Partitionby ("colonna")

Possiamo ordinare i dati partizionati con la colonna partizionata o qualsiasi altra colonna.

Creiamo il frame dati.

Esempio:

Qui, creiamo un frame dati pyspark che ha 5 colonne - ['soggetto_id', 'name', 'age', 'technology1', 'technology2'] con 10 righe.

importare pyspark
da pyspark.SQL Importazione di importazione
da pyspark.SQL.funzioni importanti *
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 ("---------- Frame dati effettivo ----------")
dataframe_obj.spettacolo()

Produzione:

Funzione di finestra Pyspark Variance ()

La varianza () nella funzione della finestra viene utilizzata per restituire la varianza in ciascuna partizione. Può essere possibile restituire la varianza dopo aver partito il frame dati.

Sintassi:

dataframe_obj.WithColumn ("varianza", varianza (col ("colonna")).Over (partizione))

Parametro:

varianza (col ("colonna"))

Qui, la funzione Variance () prende il nome della colonna come parametro. Restituisce la varianza in questa colonna in ogni partizione.

Aggiungiamo il risultato in una colonna denominata varianza usando la funzione WithColumn ().

Esempio 1:

Ora, abbiamo un frame dati (creato in precedenza). Partitionlo in base alla colonna Technology1 e otteniamo la varianza nella colonna soggetto_id in ogni partizione.

# Importa la funzione della finestra
da pyspark.SQL.finestra di importazione della finestra
#import la varianza e col da pyspark.SQL.funzioni
da pyspark.SQL.funzioni di importanza importazione, col
#partition Il frame dati in base ai valori nella colonna
partizione = finestra.Partitionby ("Technology1")
print ("---------- DataFrame partizionato ----------")
#return La varianza nella colonna soggetto_id per ogni partizione
dataframe_obj.WithColumn ("varianza", varianza (col ("soggetto_id")).Over (partizione)).spettacolo()

Produzione:

Spiegazione:

Il numero totale di partizioni è 4.

Partizione 1:

IL .La rete si è verificata due volte nella prima partizione. La varianza della colonna soggetto_id è 0.0.

Partizione 2:

Hadoop si è verificato una volta nella seconda partizione. Quindi, la varianza è nulla.

Partizione 3:

Oracle si è verificato quattro volte nella terza partizione.

La varianza della colonna soggetto_id è 401.0.

Partizione 4:

PHP si è verificato tre volte nella quarta partizione.

La varianza della colonna soggetto_id è 0.0.

Esempio 2:

Ora, abbiamo un frame dati (creato in precedenza). Partizioniamo in base alla colonna Technology1 e otteniamo la varianza nella colonna di età in ogni partizione.

# Importa la funzione della finestra
da pyspark.SQL.finestra di importazione della finestra
#import la varianza e col da pyspark.SQL.funzioni
da pyspark.SQL.funzioni di importanza importazione, col
#partition Il frame dati in base ai valori nella colonna
partizione = finestra.Partitionby ("Technology1")
print ("---------- DataFrame partizionato ----------")
#RETURN La varianza nella colonna di età per ogni partizione
dataframe_obj.WithColumn ("varianza", varianza (col ("età").Over (partizione)).spettacolo()

Produzione:

Spiegazione:

Il numero totale di partizioni è 4.

Partizione 1:

IL .La rete si è verificata due volte nella prima partizione. La varianza della colonna di età è 0.0.

Partizione 2:

Hadoop si è verificato una volta nella seconda partizione. Quindi, la varianza è nulla.

Partizione 3:

Oracle si è verificato quattro volte nella terza partizione.

La varianza della colonna di età è 0.666.

Partizione 4:

PHP si è verificato tre volte nella quarta partizione.

La varianza della colonna di età è 1.333.

Funzione di finestra PysPark Stddev ()

Lo stddev () nella funzione della finestra viene utilizzato per restituire la deviazione standard in ciascuna partizione. Può essere possibile restituire la deviazione standard dopo aver partito il frame dati.

Sintassi:

dataframe_obj.WithColumn ("Deviazione standard", stddev (col ("colonna")).Over (partizione))

Parametro:

stddev (col ("colonna"))

Qui, lo stddev () prende il nome della colonna come parametro. Restituisce la deviazione standard in questa colonna in ogni partizione.

Aggiungiamo il risultato in una colonna denominata deviazione standard usando la funzione WithColumn ().

Esempio 1:

Ora, abbiamo un frame dati (creato in precedenza). Partitionlo in base alla colonna Technology1 e otteniamo la deviazione standard nella colonna soggetto_id in ogni partizione.

# Importa la funzione della finestra
da pyspark.SQL.finestra di importazione della finestra
#import the stddev e col da pyspark.SQL.funzioni
da pyspark.SQL.Funzioni Importa stddev, col
#partition Il frame dati in base ai valori nella colonna
partizione = finestra.Partitionby ("Technology1")
print ("---------- DataFrame partizionato ----------")
#Trenturn La deviazione satndard nella colonna soggetto_id per ogni partizione
dataframe_obj.WithColumn ("Standard Deviation", stdDev (col ("soggetto_id")).Over (partizione)).spettacolo()

Produzione:

Spiegazione:

Il numero totale di partizioni è 4.

Partizione 1:

IL .La rete si è verificata due volte nella prima partizione. La deviazione standard della colonna soggetto_id è 0.0.

Partizione 2:

Hadoop si è verificato una volta nella seconda partizione. Quindi, la deviazione standard è nulla.

Partizione 3:

Oracle si è verificato quattro volte nella terza partizione.

La deviazione standard della colonna soggetto_id è 20.024984.

Partizione 4:

PHP si è verificato tre volte nella quarta partizione.

La deviazione standard della colonna soggetto_id è 0.0.

Esempio 2:

Ora, abbiamo un frame dati (creato in precedenza). Partizioniamo in base alla colonna Technology1 e otteniamo la deviazione standard nella colonna di età in ogni partizione.

# Importa la funzione della finestra
da pyspark.SQL.finestra di importazione della finestra
#import the stddev e col da pyspark.SQL.funzioni
da pyspark.SQL.Funzioni Importa stddev, col
#partition Il frame dati in base ai valori nella colonna
partizione = finestra.Partitionby ("Technology1")
print ("---------- DataFrame partizionato ----------")
#Trenturn the Satndard Deviation in Età Colonna per ogni partizione
dataframe_obj.WithColumn ("Deviazione standard", stddev (col ("età")).Over (partizione)).spettacolo()

Produzione:

Spiegazione:

Il numero totale di partizioni è 4.

Partizione 1:

IL .La rete si è verificata due volte nella prima partizione. La deviazione standard della colonna di età è 0.0.

Partizione 2:

Hadoop si è verificato una volta nella seconda partizione. Quindi, la deviazione standard è nulla.

Partizione 3:

Oracle si è verificato quattro volte nella terza partizione.

La deviazione standard della colonna di età è 0.8164.

Partizione 4:

PHP si è verificato tre volte nella quarta partizione.

La deviazione standard della colonna di età è 1.1547.

Conclusione

In questo tutorial di partizionamento di Pyspark, abbiamo imparato a restituire la varianza in ciascuna finestra partizionata usando la funzione varianza () e la deviazione standard in ciascuna finestra partizionata usando la funzione stddev (). Abbiamo aggiunto il risultato al frame dati esistente come nuova colonna. Assicurati di importare la varianza e stddev dal pyspark.SQL.modulo funzioni.