PySpark adatok ábrázolása a hisztogramon

Pyspark Adatok Abrazolasa A Hisztogramon



A PySparkban az adatok megjelenítése hisztogram és más ábrázolási technikák használatával történik. Ez segít megérteni a Data Science mérnökeit az adatok grafikus ábrázolásával. Az idő fontos korlát számukra. Ezekkel a vizualizációkkal gyorsabban tudják elemezni az adatokat, összehasonlítva más adatformátumokkal, például szöveggel/csv-vel és más formátumokkal.

Ebben az útmutatóban látni fogjuk, hogyan kell ábrázolni a PySpark-adatokat a hisztogramon. Itt két forgatókönyvet láthatunk. A hisztogram a PySpark Pandas DataFrame-en és az RDD-adatokon jön létre. Ehhez a két forgatókönyvhöz a PySpark két funkciót biztosít: pyspark.pandas.DataFrame.plot.hist() és pyspark.RDD.histogram.

Tartalom témája:







Pyspark.pandas.DataFrame.plot.hist()

Ebben a forgatókönyvben a hisztogram az adatok grafikonszerű ábrázolásaként jelenik meg, amely osztályokat csoportosít oszlopokba (a PySpark Pandas DataFrame-ből) a vízszintes x-tengellyel együtt. Az y-tengely a PySpark Pandas DataFrame-ben az egyes oszlopok előfordulásának számát jelöli.



Szintaxis:



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

A rekeszek teljes számát opcionális paraméternek tekinti, amely egy egész szám és néhány opcionális kulcsszó argumentum. Ha a rekeszek nincsenek megadva minden oszlophoz, egy sáv jön létre.





Nyomjon hisztogramot a PySpark Pandas DataFrame-en

Hozzon létre egy PySpark Pandas DataFrame-et, amely 2 oszlopból és 4 rekordból áll. Ábrázolja a hisztogramot anélkül, hogy paramétert adna át a plot.hist() függvénynek.

pyspark import pandáktól

pyspark_pandas_dataframe=pandas.DataFrame({ 'Épületmagasság' :[ 120,56 , 234,67 , 12.0 , 200,45 ], 'Épületi_terület' :[ 2 , 3 , 1 , 4 ]})

print(pyspark_pandas_dataframe)

# PySpark-Pandas hisztogram

pyspark_pandas_dataframe.plot.hist()

Kimenet:



Itt az oszlopnevek „Épületmagasság” és „Épület_területe”.

Nézzük a hisztogramot:

A sorok teljes száma az előző DataFrame-ben 4. Tehát 4 bin jön létre.

Nyomjon hisztogramot a PySpark Pandas DataFrame-en a Bins paraméterrel

Hozzon létre egy PySpark Pandas DataFrame-et, amely 2 oszlopból és 4 rekordból áll. Ábrázolja a hisztogramot anélkül, hogy paramétert adna át a plot.hist() függvénynek.

pyspark import pandáktól

pyspark_pandas_dataframe=pandas.DataFrame({ 'Épületmagasság' :[ 120,56 , 234,67 , 12.0 , 200,45 ], 'Épületi_terület' :[ 2 , 3 , 1 , 4 ]})

# PySpark-Pandas hisztogram 2 tálcával

pyspark_pandas_dataframe.plot.hist(bins= 2 )

Kimenet:

Itt az oszlopnevek „Épületmagasság” és „Épület_területe”.

Nézzük a hisztogramot – a piros a „Building_Area”, a kék pedig a „Building_height” oszlopra utal:

Ahogyan megadtuk, csak 2 rekesz és 2 sáv jött létre. Négy sor itt 2 vödörbe van összerakva.

Nyomjon hisztogramot a PySpark RDD-n a vödör számának megadásával

Amikor RDD-vel dolgozik, a hisztogram egy sor formájában adható vissza, amely tartalmazza az egyes gyűjtőkben található gyűjtőhelyeket és teljes értékeket.

Szintaxis:

pyspark_RDD.histogram(vödrök)

Ebben a forgatókönyvben a hisztogramban szereplő csoportok számát (egész szám) adjuk át. Visszaadja a listák sorát, amelyek tartalmazzák a vödörtartományokat és a megfelelő értékek előfordulásait a következő formátumban: ([csoporttartományok…], [értékelőfordulások…]).

1. példa:

Hozzunk létre egy „Building_height” nevű RDD-t 10 értékkel, és hozzunk létre egy hisztogramot 3 gyűjtőrésszel.

import pyspark

a pyspark.sql-ből importálja a SparkSession-t

a pyspark.rdd import RDD-ből

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

# Hozzon létre egy RDD-t 10 értékkel

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

nyomtatás( 'Tényleges: ' ,Building_height.collect())

# 3 vödör megadása

Building_height.histogram( 3 )

Kimenet:

  1. Az 1. csoport 12,0 és 86,223 közötti tartományban van: Ebben a tartományban a csoportban lévő értékek száma összesen 5.
  2. A 2. csoport 86.223 és 160.446 közötti tartományban van: Ebben a tartományban a gyűjtőcsoportban található értékek teljes száma 3.
  3. A 3. csoport 160,446 és 234,67 közötti tartományban van: Ebben a tartományban a gyűjtőcsoportban található értékek teljes száma 2.

2. példa:

Hozzon létre egy hisztogramot 2 vödörrel a korábban létrehozott RDD-n.

import pyspark

a pyspark.sql-ből importálja a SparkSession-t

a pyspark.rdd import RDD-ből

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

# Hozzon létre egy RDD-t 10 értékkel

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

nyomtatás( 'Tényleges: ' ,Building_height.collect())

# 2 vödör megadása

Building_height.histogram( 2 )

Kimenet:

  1. Az 1. csoport 12,0 és 123,335 között van. Ebben a tartományban a gyűjtőcsoportban található értékek teljes száma 8.
  2. A 2. csoport 123,335 és 234,67 között van: Ebben a tartományban a gyűjtőcsoportban található értékek teljes száma 2.

Nyomjon hisztogramot a PySpark RDD-n az egyes vödör méretének megadásával

Az előző forgatókönyvben a kockákat az RDD.histogram() függvénynek adtuk át. Most egymás után adjuk át a vödörméreteket egy listán belül, és ezt a listát paraméterként adjuk át ennek a függvénynek. Győződjön meg arról, hogy legalább két gyűjtőcsoportot meg kell adnunk növekvő/növekvő sorrendben, és nem lesznek ismétlődő értékek.

Szintaxis:

pyspark_RDD.histogram([csoporttartományok…])

Ebben a forgatókönyvben átadjuk a hisztogramban szereplő csoportok számát (egész szám). Visszaadja a listák sorát, amelyek tartalmazzák a vödörtartományokat és a megfelelő értékek előfordulásait a következő formátumban: ([csoporttartományok…], [értékelőfordulások…]).

1. példa:

Hozzunk létre egy „Building_height” nevű RDD-t 10 értékkel, és hozzunk létre egy hisztogramot a bucker értéktartománnyal [0, 50, 100, 150, 200, 250].

import pyspark

a pyspark.sql-ből importálja a SparkSession-t

a pyspark.rdd import RDD-ből

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

# Hozzon létre egy RDD-t 10 értékkel

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

nyomtatás( 'Tényleges: ' ,Building_height.collect())

# Vödör megadása mérettel - [0,50,100,150,200,250]

Building_height.histogram([ 0 , ötven , 100 , 150 , 200 , 250 ])

Kimenet:

  1. 1. csoport: (0-tól 50-ig) : Ebben a csoportban a teljes érték 3.
  2. 1. csoport: (50-től 100-ig) : Ebben a csoportban a teljes érték 2.
  3. 1. csoport: (100-tól 150-ig): Ebben a csoportban a teljes érték 2.
  4. 1. csoport: (150-től 200-ig): Ebben a csoportban a teljes érték 2.
  5. 1. csoport: (200-tól 250-ig): Ebben a csoportban a teljes érték 2.

2. példa:

Hozzon létre egy hisztogramot a [0, 100, 200, 300] értéktartományokkal.

import pyspark

a pyspark.sql-ből importálja a SparkSession-t

a pyspark.rdd import RDD-ből

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

# Hozzon létre egy RDD-t 10 értékkel

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

nyomtatás( 'Tényleges: ' ,Building_height.collect())

# Vödör megadása mérettel - [0,100,200,300]

Building_height.histogram([ 0 , 100 , 200 , 300 ])

Kimenet:

  1. 1. vödör: (0-tól 100-ig). Ebben a vödörben a teljes érték 5.
  2. 2. vödör: (100–200). A teljes érték ebben a vödörben 3.
  3. 3. vödör: (200-300). Ebben a vödörben a teljes érték 2.

Következtetés

Láttuk, hogyan lehet hisztogramokat létrehozni a PySparkban PySpark Pandas DataFrame és RDD rendszeren. A hisztogram() az a függvény, amely az RDD adatok hisztogramjának lekérésére szolgál. A plot.hist() a hisztogram megjelenítésére szolgál a PySpark Pandas DataFrame-en. Ezeket a függvényeket példákon keresztül tárgyaltuk az összes paraméterre kiterjedően.