Come tracciare i dati PySpark sull'istogramma

Come Tracciare I Dati Pyspark Sull Istogramma



In PySpark, la visualizzazione dei dati viene eseguita utilizzando l'istogramma e altre tecniche di tracciamento. Questo aiuta a comprendere gli ingegneri di Data Science con i dati nella rappresentazione grafica. Il tempo è un vincolo importante per loro. Con queste visualizzazioni, possono analizzare i dati più rapidamente rispetto ad altri formati di dati come testo/csv e altri.

In questa guida vedremo come tracciare i dati PySpark su istogramma. Possiamo vedere due scenari qui. L'istogramma viene creato su PySpark Pandas DataFrame e su dati RDD. Per questi due scenari, PySpark fornisce due funzioni: pyspark.pandas.DataFrame.plot.hist() e pyspark.RDD.histogram.

Argomento dei contenuti:







Pyspark.pandas.DataFrame.plot.hist()

In questo scenario, l'istogramma viene visualizzato come una rappresentazione grafica dei dati che racchiude un intervallo di classi in colonne (dal DataFrame di PySpark Pandas) insieme all'asse x orizzontale. L'asse y rappresenta il numero di occorrenze nel DataFrame di PySpark Pandas per ogni colonna.



Sintassi:



pyspark_pandas_DataFrame.plot.hist(bins,...)

Prende il numero totale di contenitori come parametro opzionale che è un numero intero e alcuni argomenti di parole chiave opzionali. Se i contenitori non sono specificati per ogni colonna, viene creata una barra.





Traccia l'istogramma sul dataframe di PySpark Pandas

Crea un DataFrame PySpark Pandas con 2 colonne con 4 record. Traccia l'istogramma senza passare alcun parametro alla funzione plot.hist().

da pyspark import panda

pyspark_pandas_dataframe=pandas.DataFrame({ 'altezza_edificio' :[ 120,56 , 234,67 , 12.0 , 200,45 ], 'Area di costruzione' :[ 2 , 3 , 1 , 4 ]})

print(pyspark_pandas_dataframe)

# Istogramma PySpark-Pandas

pyspark_pandas_dataframe.plot.hist()

Produzione:



Qui, i nomi delle colonne sono 'Building_height' e 'Building_Area'.

Diamo un'occhiata all'istogramma:

Il numero totale di righe nel DataFrame precedente è 4. Quindi, vengono creati 4 contenitori.

Traccia l'istogramma sul dataframe PySpark Pandas con il parametro Bins

Crea un DataFrame PySpark Pandas con 2 colonne con 4 record. Traccia l'istogramma senza passare alcun parametro alla funzione plot.hist().

da pyspark import panda

pyspark_pandas_dataframe=pandas.DataFrame({ 'altezza_edificio' :[ 120,56 , 234,67 , 12.0 , 200,45 ], 'Area di costruzione' :[ 2 , 3 , 1 , 4 ]})

# Istogramma PySpark-Pandas con 2 raccoglitori

pyspark_pandas_dataframe.plot.hist(bins= 2 )

Produzione:

Qui, i nomi delle colonne sono 'Building_height' e 'Building_Area'.

Diamo un'occhiata all'istogramma: il rosso si riferisce a 'Building_Area' e il blu si riferisce alla colonna 'Building_height':

Come abbiamo specificato, sono stati creati solo 2 bin e 2 barre. Quattro righe sono raggruppate in 2 secchi qui.

Traccia l'istogramma su PySpark RDD specificando il numero di bucket

Quando lavori con RDD, l'istogramma può essere restituito sotto forma di tupla che include i bucket e i valori totali presenti in ciascun bucket.

Sintassi:

pyspark_RDD.histogram(bucket)

In questo scenario, passiamo il numero di bucket (numero intero) inclusi nell'istogramma. Restituisce la tupla di elenchi che includono gli intervalli di bucket e le occorrenze dei valori corrispondenti nel seguente formato: ([intervalli di bucket...], [occorrenze di valori...]).

Esempio 1:

Creiamo un RDD denominato 'Building_height' con 10 valori e creiamo un istogramma con 3 bucket.

importa pyspark

da pyspark.sql importa SparkSession

da pyspark.rdd importa RDD

spark_app = SparkSession.builder.appName( 'linux' ).getOrCreate()

# Crea un RDD con 10 valori

Building_height =spark_app.sparkContext.parallelize([ 120,56 , 234,67 , 12.0 , 200,45 , 17.8 , 24 , 56 , 78 , 90 , 100 ])

stampa( 'Effettivo: ' ,altezza_edificio.collect())

# Specificando 3 secchi

Altezza_edificio.istogramma( 3 )

Produzione:

  1. Bucket-1 varia da 12.0 a 86.223 : In questo intervallo, il numero totale di valori presenti nel bucket è 5.
  2. Bucket-2 varia da 86.223 a 160.446 : In questo intervallo, il numero totale di valori presenti nel bucket è 3.
  3. Bucket-3 varia da 160.446 a 234.67 : In questo intervallo, il numero totale di valori presenti nel bucket è 2.

Esempio 2:

Crea un istogramma con 2 bucket sull'RDD creato in precedenza.

importa pyspark

da pyspark.sql importa SparkSession

da pyspark.rdd importa RDD

spark_app = SparkSession.builder.appName( 'linux' ).getOrCreate()

# Crea un RDD con 10 valori

Building_height =spark_app.sparkContext.parallelize([ 120,56 , 234,67 , 12.0 , 200,45 , 17.8 , 24 , 56 , 78 , 90 , 100 ])

stampa( 'Effettivo: ' ,altezza_edificio.collect())

# Specificando 2 secchi

Altezza_edificio.istogramma( 2 )

Produzione:

  1. Il bucket 1 va da 12,0 a 123,335. In questo intervallo, il numero totale di valori presenti nel bucket è 8.
  2. Il bucket 2 varia da 123,335 a 234,67: in questo intervallo, il numero totale di valori presenti nel bucket è 2.

Traccia l'istogramma su PySpark RDD specificando la dimensione di ciascun bucket

Nello scenario precedente, abbiamo passato i bucket alla funzione RDD.histogram(). Ora passiamo le dimensioni del bucket una dopo l'altra all'interno di un elenco e passiamo questo elenco come parametro a questa funzione. Assicurati di dover specificare almeno due bucket in ordine crescente/crescente e che non abbia valori duplicati.

Sintassi:

pyspark_RDD.histogram([intervallo di bucket...])

In questo scenario, passiamo il numero di bucket (numero intero) inclusi nell'istogramma. Restituisce la tupla di elenchi che includono gli intervalli di bucket e le occorrenze dei valori corrispondenti nel seguente formato: ([intervalli di bucket...], [occorrenze di valori...]).

Esempio 1:

Creiamo un RDD denominato 'Building_height' con 10 valori e creiamo un istogramma con l'intervallo di valori bucker [0, 50, 100, 150, 200, 250].

importa pyspark

da pyspark.sql importa SparkSession

da pyspark.rdd importa RDD

spark_app = SparkSession.builder.appName( 'linux' ).getOrCreate()

# Crea un RDD con 10 valori

Building_height =spark_app.sparkContext.parallelize([ 120,56 , 234,67 , 12.0 , 200,45 , 17.8 , 24 , 56 , 178 , 90 , 100 ])

stampa( 'Effettivo: ' ,altezza_edificio.collect())

# Specifica del secchio con dimensioni - [0,50,100,150,200,250]

Altezza_edificio.istogramma([ 0 , cinquanta , 100 , 150 , 200 , 250 ])

Produzione:

  1. Bucket 1: (da 0 a 50): i valori totali in questo bucket sono 3.
  2. Bucket 1: (da 50 a 100): i valori totali in questo bucket sono 2.
  3. Bucket 1: (da 100 a 150): i valori totali in questo bucket sono 2.
  4. Bucket 1: (da 150 a 200): i valori totali in questo bucket sono 2.
  5. Bucket 1: (da 200 a 250): i valori totali in questo bucket sono 2.

Esempio 2:

Crea un istogramma con l'intervallo di valori del bucket [0, 100, 200, 300].

importa pyspark

da pyspark.sql importa SparkSession

da pyspark.rdd importa RDD

spark_app = SparkSession.builder.appName( 'linux' ).getOrCreate()

# Crea un RDD con 10 valori

Building_height =spark_app.sparkContext.parallelize([ 120,56 , 234,67 , 12.0 , 200,45 , 17.8 , 24 , 56 , 178 , 90 , 100 ])

stampa( 'Effettivo: ' ,altezza_edificio.collect())

# Specifica del bucket con dimensioni - [0,100,200,300]

Altezza_edificio.istogramma([ 0 , 100 , 200 , 300 ])

Produzione:

  1. Secchio 1: (da 0 a 100). Il valore totale in questo bucket è 5.
  2. Secchio 2: (da 100 a 200). Il valore totale in questo bucket è 3.
  3. Secchio 3: (da 200 a 300). Il valore totale in questo bucket è 2.

Conclusione

Abbiamo visto come creare istogrammi in PySpark su PySpark Pandas DataFrame e RDD. histogram() è la funzione utilizzata per ottenere l'istogramma sui dati RDD. Il plot.hist() viene utilizzato per visualizzare l'istogramma su PySpark Pandas DataFrame. Abbiamo discusso queste funzioni con esempi coprendo tutti i parametri.