Cara Merencanakan Data PySpark di Histogram

Cara Merencanakan Data Pyspark Di Histogram



Di PySpark, visualisasi data dilakukan menggunakan histogram dan teknik plotting lainnya. Ini membantu memahami para insinyur Ilmu Data dengan data dalam representasi grafis. Waktu adalah kendala penting bagi mereka. Dengan visualisasi ini, mereka dapat menganalisis data lebih cepat jika dibandingkan dengan format data lain seperti teks/csv dan lainnya.

Dalam panduan ini, kita akan melihat cara memplot Data PySpark pada histogram. Kita bisa melihat dua skenario di sini. Histogram dibuat di PySpark Pandas DataFrame dan data RDD. Untuk dua skenario ini, PySpark menyediakan dua fungsi: pyspark.pandas.DataFrame.plot.hist() & pyspark.RDD.histogram.

Topik Isi:







Pyspark.pandas.DataFrame.plot.hist()

Dalam skenario ini, histogram ditampilkan sebagai representasi data seperti grafik yang mengelompokkan berbagai kelas ke dalam kolom (dari PySpark Pandas DataFrame) bersama dengan sumbu x horizontal. Sumbu y mewakili jumlah kemunculan di PySpark Pandas DataFrame untuk setiap kolom.



Sintaksis:



pyspark_pandas_DataFrame.plot.hist(tempat sampah,...)

Dibutuhkan jumlah total tempat sampah sebagai parameter opsional yang merupakan bilangan bulat dan beberapa argumen kata kunci opsional. Jika nampan tidak ditentukan untuk setiap kolom, bilah dibuat.





Plot Histogram pada DataFrame PySpark Pandas

Buat DataFrame PySpark Pandas yang memiliki 2 kolom dengan 4 catatan. Plot histogram tanpa meneruskan parameter apa pun ke fungsi plot.hist() .

dari panda impor pyspark

pyspark_pandas_dataframe=pandas.DataFrame({ 'Bangunan_tinggi' :[ 120.56 , 234.67 , 12.0 , 200,45 ], 'Luas bangunan' :[ 2 , 3 , 1 , 4 ]})

cetak(pyspark_pandas_dataframe)

# histogram PySpark-Panda

pyspark_pandas_dataframe.plot.hist()

Keluaran:



Di sini, nama kolomnya adalah “Building_height” dan “Building_Area”.

Mari kita lihat Histogram:

Jumlah total baris pada DataFrame sebelumnya adalah 4. Jadi, 4 bin dibuat.

Plot Histogram pada PySpark Pandas DataFrame dengan Bins Parameter

Buat DataFrame PySpark Pandas yang memiliki 2 kolom dengan 4 catatan. Plot histogram tanpa meneruskan parameter apa pun ke fungsi plot.hist() .

dari panda impor pyspark

pyspark_pandas_dataframe=pandas.DataFrame({ 'Bangunan_tinggi' :[ 120.56 , 234.67 , 12.0 , 200,45 ], 'Luas bangunan' :[ 2 , 3 , 1 , 4 ]})

# histogram PySpark-Pandas dengan 2 tempat sampah

pyspark_pandas_dataframe.plot.hist(bins= 2 )

Keluaran:

Di sini, nama kolomnya adalah “Building_height” dan “Building_Area”.

Mari kita lihat histogram – merah mengacu pada “Building_Area” dan biru mengacu pada kolom “Building_height”:

Seperti yang kami tentukan, hanya 2 nampan dan 2 batang yang dibuat. Empat baris digabungkan menjadi 2 ember di sini.

Plot Histogram pada RDD PySpark dengan Menentukan Nomor Bucket

Saat Anda bekerja dengan RDD, histogram dapat dikembalikan dalam bentuk tuple yang menyertakan keranjang dan nilai total yang ada di setiap keranjang.

Sintaksis:

pyspark_RDD.histogram(ember)

Dalam skenario ini, kami melewatkan jumlah ember (bilangan bulat) yang disertakan dalam Histogram. Ini mengembalikan tupel daftar yang menyertakan rentang keranjang dan kemunculan nilai terkait dalam format berikut: ([rentang bucket…], [nilai kejadian…]).

Contoh 1:

Mari buat RDD bernama 'Building_height' dengan 10 nilai dan buat histogram dengan 3 keranjang.

impor pyspark

dari pyspark.sql impor SparkSession

dari pyspark.rdd impor RDD

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

# Buat RDD dengan 10 nilai

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

mencetak( 'Sebenarnya:' ,Building_height.collect())

# Menentukan 3 ember

Bangunan_tinggi.histogram( 3 )

Keluaran:

  1. Bucket-1 berkisar dari 12.0 hingga 86.223 : Dalam rentang ini, jumlah total nilai yang ada di bucket adalah 5.
  2. Bucket-2 berkisar dari 86.223 hingga 160.446 : Dalam rentang ini, jumlah total nilai yang ada di bucket adalah 3.
  3. Bucket-3 berkisar dari 160.446 hingga 234.67 : Dalam rentang ini, jumlah total nilai yang ada di bucket adalah 2.

Contoh 2:

Buat histogram dengan 2 bucket pada RDD yang dibuat sebelumnya.

impor pyspark

dari pyspark.sql impor SparkSession

dari pyspark.rdd impor RDD

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

# Buat RDD dengan 10 nilai

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

mencetak( 'Sebenarnya:' ,Building_height.collect())

# Menentukan 2 ember

Bangunan_tinggi.histogram( 2 )

Keluaran:

  1. Bucket 1 berkisar dari 12.0 hingga 123.335. Dalam rentang ini, jumlah total nilai yang ada di keranjang adalah 8.
  2. Keranjang 2 berkisar dari 123,335 hingga 234,67: Dalam rentang ini, jumlah total nilai yang ada di keranjang adalah 2.

Plot Histogram pada RDD PySpark dengan Menentukan Ukuran Setiap Bucket

Dalam skenario sebelumnya, kami meneruskan bucket ke fungsi RDD.histogram(). Sekarang, kami meneruskan ukuran keranjang satu demi satu di dalam daftar dan meneruskan daftar ini sebagai parameter untuk fungsi ini. Pastikan bahwa kita perlu menentukan setidaknya dua keranjang dalam urutan meningkat/menaik dan tidak akan memiliki nilai duplikat.

Sintaksis:

pyspark_RDD.histogram([jangkauan ember…])

Dalam skenario ini, kami melewatkan jumlah ember (bilangan bulat) yang disertakan dalam histogram. Ini mengembalikan tupel daftar yang menyertakan rentang keranjang dan kemunculan nilai terkait dalam format berikut: ([rentang bucket…], [nilai kejadian…]).

Contoh 1:

Mari buat RDD bernama 'Building_height' dengan 10 nilai dan buat histogram dengan rentang nilai bucker [0, 50, 100, 150, 200, 250].

impor pyspark

dari pyspark.sql impor SparkSession

dari pyspark.rdd impor RDD

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

# Buat RDD dengan 10 nilai

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

mencetak( 'Sebenarnya:' ,Building_height.collect())

# Menentukan keranjang dengan ukuran - [0,50,100,150,200,250]

Bangunan_tinggi.histogram([ 0 , lima puluh , 100 , 150 , 200 , 250 ])

Keluaran:

  1. Keranjang 1: (0 hingga 50): Nilai total dalam keranjang ini adalah 3.
  2. Keranjang 1: (50 hingga 100): Nilai total dalam keranjang ini adalah 2.
  3. Keranjang 1: (100 hingga 150): Nilai total dalam keranjang ini adalah 2.
  4. Keranjang 1: (150 hingga 200): Nilai total dalam keranjang ini adalah 2.
  5. Keranjang 1: (200 hingga 250): Nilai total dalam keranjang ini adalah 2.

Contoh 2:

Buat histogram dengan rentang nilai keranjang [0, 100, 200, 300].

impor pyspark

dari pyspark.sql impor SparkSession

dari pyspark.rdd impor RDD

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

# Buat RDD dengan 10 nilai

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

mencetak( 'Sebenarnya:' ,Building_height.collect())

# Menentukan keranjang dengan ukuran - [0,100,200,300]

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

Keluaran:

  1. Keranjang 1: (0 hingga 100). Nilai total dalam keranjang ini adalah 5.
  2. Ember 2: (100 hingga 200). Nilai total dalam keranjang ini adalah 3.
  3. Ember 3: (200 hingga 300). Nilai total dalam keranjang ini adalah 2.

Kesimpulan

Kami telah melihat cara membuat histogram di PySpark di PySpark Pandas DataFrame dan RDD. histogram() adalah fungsi yang digunakan untuk mendapatkan histogram pada data RDD. Plot.hist() digunakan untuk menampilkan histogram di PySpark Pandas DataFrame. Kami membahas fungsi-fungsi ini dengan contoh-contoh dengan mencakup semua parameter.