1. Home
  2. Docs
  3. MAteri EDA
  4. Univariate, Bivariate, Multivariate analysis

Univariate, Bivariate, Multivariate analysis

Dalam Exploratory Data Analysis, terdapat beberapa tipe analisa secara fundamental. Jika kita memiliki dataset seperti berikut:

Berikut intuisi dari Univariate, Bivariate dan Multivariate analysis.

1. Univariate Analysis

Univariate Analysis merupakan sebuah teknik dalam memahami dan melakukan eksplorasi data. Imbuhan awal ‘Uni’ artinya ‘satu’, maka analisa univariate merupakan analisa data feature tunggal.

Ketika menganalisa menggunakan univariate analysis akan membentuk sebuah kategori. Tapi dalam univariate analysis bisa jadi ada overlapping saat plot data, oleh karena itu jika hanya dengan 1 feature kita tidak bisa mengklasifikasikan output dengan benar. Sehingga kita butuh bivariate dan multivariate analysis.

Saat melakukan analisa Univariate, jenis-jenis grafik yang bisa digunakan adalah: Histogram, Bar chart, Density plots, Distribution plots dan lainnya. 

Histogram digunakan untuk plotting data numerik yang mana akan menganalisa nilai frekuensi yang dimiliki oleh data. 

Bar chart digunakan sebagai komparasi dimana kita akan membandingkan tiap nilai dari sebuah variabel data kategorikal.

Density plot digunakan untuk menganalisa sebaran data

Grafik untuk data kualitatif (kategorikal)

1. Pie Chart

Pie chart merupakan grafik statistika berbentuk lingkaran yang dibagi menjadi beberapa potongan untuk mengilustrasikan proporsi suatu nilai. 

Sebagai contoh, tabel dibawah ini merupakan frekuensi dari tipe golongan darah untuk 40 sampel individu. 

 

2. Bar Chart

Bar chart merupakan grafik yang merepresentasikan data kategorikal dengan bar persegi panjang yang memiliki tinggi dan panjang berbanding lurus dengan nilai yang akan dipresentasikan. 

Sebagai contoh, 

 

Grafik untuk data kuantitatif(numerik)

3. Histogram dan poligon

Bentuk grafik histogram mirip dengan bar chart namun ada beberapa perbedaan. 

  • Tidak ada gap antara antara bar/bin
  • Lebar bin = Lebar interval class, batas class ditandai pada sumbu horizontal. 
  • Tinggi bin = Umumnya nilai frekuensi
  • Area bins berbanding lurus dengan frekuensi

2. Bivariate Analysis

Bivariate analysis digunakan untuk untuk menganalisa 2 variables dan menemukan sebuah relasi. Analisis bivariate juga merupakan salah satu cara untuk menggunakan koefisien korelasi dalam rangka menemukan apakah dua variabel memiliki relasi atau tidak. 

 

Dari grafik hasil plot, terlihat bahwa output terklasifikasi. Tetapi saat plotting ada overlapping data antar klasifikasi. Dengan bivariate, kita bisa melihat misalkan jika terlalu banyak overlapping data kita bisa menentukan algoritma mana yang bisa digunakan.

 

Jenis-jenis grafik yang digunakan untuk bivariate analisis adalah:

  • Scatter plot
  • Mosaic plots
  • Histogram/Barplot
  • Heatmaps
  • Linechart

2.1. Hands-on Mengenai Bivariate Analysis

 Kita akan membahas mengenai beberapa plotting data yang sangat berguna dalam melakukan analisa bivariat yaitu: scatter, hex, stacked bar, dan bivariate line chart.

Ketika kita dihadapkan pada suatu data mentah, kita belum dapat mengetahui informasi yang terdapat dalam data tersebut. Sehingga, perlu dilakukan pendalaman lebih lanjut dalam memenuhi atau menggambarkan secara lebih jelas apa saja hubungan antara data-data tersebut. Salah satu cara untuk memahami hubungan antara data adalah dengan menggunakan bivariate analysis. Apakah ada korelasi positif antara satu variabel dengan variabel yang lain? Ataukah justru ada korelasi negatif antara satu variabel dengan variabel yang lain? Hal inilah yang harus ditanamkan dalam benak kita sebagai calon data scientist.

Load sebuah dataset yang memiliki data sebagai berikut

2.1.1. Scatter Plot

Plot paling simpel dalam analisa bivariat adalah dengan menggunakan scatter plot. Apa itu Scatter Plot? Scatter plot merupakan plot peletakkan titik koordinat sumbu x terhadap sumbu y. Jalankanlah kode berikut:

Gambar: Hubungan Points dan Price menggunakan Scatter Plot (Tanpa Downsampling)

Kita tidak bisa mengambil insight terhadap data yang berbentuk seperti ini. Terlalu banyak data yang menumpuk sehingga perlu dilakukan treating yang salah satunya adalah dengan menggunakan Downsampling Data. Apa itu Downsampling? Downsampling merupakan kegiatan untuk mengambil sampel dari seluruh data full set. Jalankanlah kode berikut:

Gambar: Hubungan Points dan Price menggunakan Scatter Plot

 

Kode diatas merupakan kode yang digunakan untuk mengambil sampel sebanyak 100 secara acak.

Masalah over plotting tersebut menjadi kekurangan penggunaan scatter plot tersebut. Sehingga, penggunaan dataset yang memiliki data relatif kecil merupakan penggunaan yang paling sesuai jika menggunakan scatter plot. Bisa juga untuk nilai yang memiliki rentang besar dan unik.

2.1.2. Hexbin Plot 

Cara lain dalam menganalisa dua buah data adalah dengan menggunakan hexbin plot. Hexbin plot berguna untuk merepresentasikan hubungan dua buah variabel numerik ketika memiliki titik-titik data. Jika sebelumnya kita dihadapi terhadap masalah overlapping, solusinya adalah dengan mengcounting jumlah data yang overlap pada titik-titik hexagonal tersebut. Warna-warna tersebut merepresentasikan jumlah titik-titik yang overlap. Jalankanlah program berikut: 

Kita dapat gali informasi bahwa wine yang paling sering di review oleh reviewer adalah pada kisaran 87.5 dan dalam kisaran harga 19 dolar. 

 

3. Multivariate Analysis

                 Multivariate analysis digunakan untuk menganalisa lebih dari 2 variabel di waktu yang sama, trends yang dihasilkan bisa menjadi multidimensi secara alami, dengan analisa ini akan membantu kita memahami manakah data yang memiliki tren yang kompleks pada kombinasi atribut. 

Grafik menunjukkan adanya korelasi di tiap feature. misalkan hubungan antara umur dan Tinggi Badan(cm). Jika bertambah umur bertambah pula tinggi bedan artinya korelasi ke dua variabel tersebut adalah positif, jika sebaliknya maka korelasi antar ke dua variabel tersebut negatif. Dari multivariate analisis ini kita bisa tentukan manakah algoritma yang tepat yang bisa digunakan untuk prediktif analisis.

 

3.1. Hands-On Mengenai Multivariate Analysis

File wine.data memiliki data mengenai 13 bentuk kimia berbeda dari wine yang ditumbuhkan dalam lokasi yang sama di Italia serta diturunkan dari 3 varietas tumbuhan yang berbeda.

Setiap sampel berada pada tiap baris yang berbeda. Racikan tumbuhan berada pada kolom 1 dan 13 kolom selanjutnya merupakan kolom yang memiliki 13 konsentrasi kimia yang berbeda dari sampel tersebut.

 

3.1.1. Matriks Scatter Plot

Salah satu metoda yang umum digunakan dalam mengeksplor data dalam analisis multivariat adalah dengan menggunakan matriks scatterplot. Matriks scatter plot dapat membandingkan hubungan satu variabel dengan variabel yang lain. Fungsi yang digunakan antara lain adalah dengan menggunakan fungsi scatter_matrix() yang berasal dari package pandas. 

Di dalam fungsi scatter_matrix() tersebut, ada beberapa parameter yang digunakan dalam memplot  data. Parameter diagonal merupakan parameter yang dapat menspesifikasikan penggunaan histogram “hist” atau kernel density estimation “kde”.

 

 

Gambar: Scatter Matrix untuk analisa multivariat berdiagonal KDE

Gambar diatas menunjukkan gambar sebaran data dan juga hubungan antara satu variabel dengan variabel yang lain. Sel diagonal menunjukkan persebaran data dari variabel tersebut menggunakan KDE.

          Kita bisa secara lebih detail menambahkan hubungan dua buah variabel dengan jenis racikan tumbuhan (3 jenis tumbuhan). Misalnya, kita ingin melihat hubungan V4 dan V5 dengan 3 buah jenis tumbuhan tersebut. jenis tumbuhan tersebut. Untuk menyelesaikan persoalan tersebut, kita menggunakan salah satu fungsi dari package seaborn dengan menggunakan fungsi lmplot.

 

 

Gambar Hubungan konsentrasi V5 terhadap V4 untuk Jenis Tumbuhan 1, 2, dan 3

Referensi:

https://python-for-multivariate-analysis.readthedocs.io/a_little_book_of_python_for_multivariate_analysis.html

https://www.kaggle.com/residentmario/bivariate-plotting-with-pandas

http://www.est.uc3m.es/esp/nueva_docencia/comp_col_get/lade/estadistica_I/doc_generica/Tema2inglesImp.pdf