Šajā rokasgrāmatā mēs redzēsim, kā histogrammā attēlot PySpark datus. Šeit mēs varam redzēt divus scenārijus. Histogramma tiek izveidota PySpark Pandas DataFrame un RDD datiem. Šiem diviem scenārijiem PySpark nodrošina divas funkcijas: pyspark.pandas.DataFrame.plot.hist() un pyspark.RDD.histogram.
Satura tēma:
- Uzzīmējiet histogrammu PySpark Pandas DataFrame
- Uzzīmējiet histogrammu PySpark Pandas DataFrame ar Bins parametru
- Uzzīmējiet histogrammu PySpark RDD, norādot segmenta numuru
- Uzzīmējiet histogrammu PySpark RDD, norādot katra kausa izmēru
Pyspark.pandas.DataFrame.plot.hist()
Šajā scenārijā histogramma tiek parādīta kā diagrammveida datu attēlojums, kas sagrupē klašu diapazonu kolonnās (no PySpark Pandas DataFrame) kopā ar horizontālo x asi. Y ass attēlo katras kolonnas gadījumu skaitu PySpark Pandas DataFrame.
Sintakse:
pyspark_pandas_DataFrame.plot.hist(bins,...)
Kopējais tvertņu skaits tiek izmantots kā neobligāts parametrs, kas ir vesels skaitlis un daži izvēles atslēgvārdu argumenti. Ja katrai kolonnai nav norādītas tvertnes, tiek izveidota josla.
Uzzīmējiet histogrammu PySpark Pandas DataFrame
Izveidojiet PySpark Pandas DataFrame ar 2 kolonnām ar 4 ierakstiem. Uzzīmējiet histogrammu, nenododot nevienu parametru funkcijai plot.hist().
no pyspark importa pandaspyspark_pandas_dataframe=pandas.DataFrame({ 'Ēkas_augstums' :[ 120.56 , 234,67 , 12.0 , 200.45 ], 'Ēkas_apgabals' :[ 2 , 3 , 1 , 4 ]})
print(pyspark_pandas_dataframe)
# PySpark-Pandas histogramma
pyspark_pandas_dataframe.plot.hist()
Izvade:
Šeit kolonnu nosaukumi ir “Ēkas_augstums” un “Ēkas_apgabals”.
Apskatīsim histogrammu:
Kopējais rindu skaits iepriekšējā DataFrame ir 4. Tātad tiek izveidotas 4 tvertnes.
Uzzīmējiet histogrammu PySpark Pandas DataFrame ar Bins parametru
Izveidojiet PySpark Pandas DataFrame ar 2 kolonnām ar 4 ierakstiem. Uzzīmējiet histogrammu, nenododot nevienu parametru funkcijai plot.hist().
no pyspark importa pandaspyspark_pandas_dataframe=pandas.DataFrame({ 'Ēkas_augstums' :[ 120.56 , 234,67 , 12.0 , 200.45 ], 'Ēkas_apgabals' :[ 2 , 3 , 1 , 4 ]})
# PySpark-Pandas histogramma ar 2 tvertnēm
pyspark_pandas_dataframe.plot.hist(bins= 2 )
Izvade:
Šeit kolonnu nosaukumi ir “Ēkas_augstums” un “Ēkas_apgabals”.
Apskatīsim histogrammu — sarkanā krāsa attiecas uz “Ēkas_platība”, bet zilā – uz kolonnu “Ēkas_augstums”:
Kā mēs norādījām, tika izveidotas tikai 2 tvertnes un 2 joslas. Šeit četras rindas ir sadalītas 2 spainīšos.
Uzzīmējiet histogrammu PySpark RDD, norādot segmenta numuru
Strādājot ar RDD, histogrammu var atgriezt kortedža veidā, kas ietver segmentus un kopējās vērtības, kas atrodas katrā segmentā.
Sintakse:
pyspark_RDD.histogramma(spaiņi)Šajā scenārijā mēs nododam histogrammā iekļauto segmentu skaitu (veselu skaitli). Tas atgriež sarakstu virkni, kas ietver segmentu diapazonus un atbilstošos vērtību gadījumus šādā formātā: ([grupu diapazoni…], [vērtību gadījumi…]).
1. piemērs:
Izveidosim RDD ar nosaukumu “Building_height” ar 10 vērtībām un izveidosim histogrammu ar 3 segmentiem.
importēt pysparkno pyspark.sql importēt SparkSession
no pyspark.rdd importēt RDD
spark_app = SparkSession.builder.appName( 'linux' ).getOrCreate()
# Izveidojiet RDD ar 10 vērtībām
Building_height =spark_app.sparkContext.parallelise([ 120.56 , 234,67 , 12.0 , 200.45 , 17.8 , 24 , 56 , 78 , 90 , 100 ])
drukāt ( 'Faktiskais:' ,Ēkas_augstums.vāc())
# Norādot 3 spaiņus
Building_height.histogram( 3 )
Izvade:
- Segums-1 ir diapazonā no 12,0 līdz 86,223 : šajā diapazonā kopējais segmentā esošo vērtību skaits ir 5.
- 2. grupas diapazons ir no 86 223 līdz 160 446 : šajā diapazonā kopējais segmentā esošo vērtību skaits ir 3.
- Grupas-3 diapazons ir no 160,446 līdz 234,67 : šajā diapazonā kopējais segmentā esošo vērtību skaits ir 2.
2. piemērs:
Izveidojiet histogrammu ar 2 segmentiem iepriekš izveidotajā RDD.
importēt pysparkno pyspark.sql importēt SparkSession
no pyspark.rdd importēt RDD
spark_app = SparkSession.builder.appName( 'linux' ).getOrCreate()
# Izveidojiet RDD ar 10 vērtībām
Building_height =spark_app.sparkContext.parallelise([ 120.56 , 234,67 , 12.0 , 200.45 , 17.8 , 24 , 56 , 78 , 90 , 100 ])
drukāt ( 'Faktiskais:' ,Ēkas_augstums.vāc())
# Norādot 2 spaiņus
Building_height.histogram( 2 )
Izvade:
- 1. grupa ir diapazonā no 12,0 līdz 123,335. Šajā diapazonā kopējais segmentā esošo vērtību skaits ir 8.
- 2. grupa svārstās no 123,335 līdz 234,67: šajā diapazonā kopējais segmentā esošo vērtību skaits ir 2.
Uzzīmējiet histogrammu PySpark RDD, norādot katra kausa izmēru
Iepriekšējā scenārijā mēs nodevām segmentus funkcijai RDD.histogram(). Tagad mēs sarakstā vienu pēc otra nododam segmentu izmērus un nododam šo sarakstu kā parametru šai funkcijai. Pārliecinieties, ka mums ir jānorāda vismaz divi segmenti augošā/augošā secībā, un tam nebūs vērtību dublikātu.
Sintakse:
pyspark_RDD.histogramma([grupu diapazoni…])Šajā scenārijā mēs nododam histogrammā iekļauto segmentu skaitu (veselu skaitli). Tas atgriež sarakstu virkni, kas ietver segmentu diapazonus un atbilstošos vērtību gadījumus šādā formātā: ([grupu diapazoni…], [vērtību gadījumi…]).
1. piemērs:
Izveidosim RDD ar nosaukumu “Building_height” ar 10 vērtībām un izveidosim histogrammu ar vērtību diapazonu [0, 50, 100, 150, 200, 250].
importēt pysparkno pyspark.sql importēt SparkSession
no pyspark.rdd importēt RDD
spark_app = SparkSession.builder.appName( 'linux' ).getOrCreate()
# Izveidojiet RDD ar 10 vērtībām
Building_height =spark_app.sparkContext.parallelise([ 120.56 , 234,67 , 12.0 , 200.45 , 17.8 , 24 , 56 , 178 , 90 , 100 ])
drukāt ( 'Faktiskais:' ,Ēkas_augstums.vāc())
# Norāda kausu ar izmēru - [0,50,100,150,200,250]
Building_height.histogram([ 0 , piecdesmit , 100 , 150 , 200 , 250 ])
Izvade:
- 1. grupa: (0 līdz 50) : kopējās vērtības šajā segmentā ir 3.
- 1. grupa: (50–100) : kopējās vērtības šajā segmentā ir 2.
- 1. grupa: (100–150) : kopējās vērtības šajā segmentā ir 2.
- 1. grupa: (150–200) : kopējās vērtības šajā segmentā ir 2.
- 1. grupa: (200–250) : kopējās vērtības šajā segmentā ir 2.
2. piemērs:
Izveidojiet histogrammu ar vērtību diapazonu [0, 100, 200, 300].
importēt pysparkno pyspark.sql importēt SparkSession
no pyspark.rdd importēt RDD
spark_app = SparkSession.builder.appName( 'linux' ).getOrCreate()
# Izveidojiet RDD ar 10 vērtībām
Building_height =spark_app.sparkContext.parallelise([ 120.56 , 234,67 , 12.0 , 200.45 , 17.8 , 24 , 56 , 178 , 90 , 100 ])
drukāt ( 'Faktiskais:' ,Ēkas_augstums.vāc())
# Norāda kausu ar izmēru - [0,100,200,300]
Building_height.histogram([ 0 , 100 , 200 , 300 ])
Izvade:
- 1. grupa: (0 līdz 100). Kopējā vērtība šajā kausā ir 5.
- 2. spainis: (100 līdz 200). Kopējā vērtība šajā segmentā ir 3.
- 3. spainis: (200 līdz 300). Kopējā vērtība šajā segmentā ir 2.
Secinājums
Mēs esam redzējuši, kā PySpark izveidot histogrammas PySpark Pandas DataFrame un RDD. histogramma () ir funkcija, kas tiek izmantota, lai iegūtu histogrammu RDD datos. Plot.hist() tiek izmantots, lai PySpark Pandas DataFrame parādītu histogrammu. Mēs apspriedām šīs funkcijas ar piemēriem, aptverot visus parametrus.