Pada era data besar, analisis korelasi antara fitur-fitur dalam dataset adalah salah satu tahapan penting dalam menentukan hubungan antara atribut-atribut. Salah satu cara untuk melakukan analisis korelasi ini adalah dengan menggunakan scatter plot untuk setiap pasang atribut. Pandas memiliki fungsi scatter_matrix()
yang dapat digunakan untuk tujuan ini.
Fungsi scatter_matrix()
ini dapat digunakan untuk dengan cepat menghasilkan kelompok scatter plot antara semua pasang fitur numerik dalam dataset. Fungsi ini akan menciptakan plot untuk setiap fitur numerik terhadap setiap fitur numerik lainnya, serta histogram untuk masing-masing fitur.
Syntax
pandas.plotting.scatter_matrix(frame)
Parameter
frame
: DataFrame yang akan dipplot.
Dataset Contoh
Kita akan menggunakan dataset housing.csv yang berisi informasi tentang harga dan statistik rumah di California. Dataset ini dapat dibaca menggunakan fungsi read_csv()
dari Pandas.
import pandas as pd
data = pd.read_csv('housing.csv')
data.info()
Output:
RangeIndex: 20640 entries, 0 to 20639
Data columns (total 10 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 longitude 20640 non-null float64
1 latitude 20640 non-null float64
2 housing_median_age 20640 non-null float64
3 total_rooms 20640 non-null float64
4 total_bedrooms 20433 non-null float64
5 population 20640 non-null float64
6 households 20640 non-null float64
7 median_income 20640 non-null float64
8 median_house_value 20640 non-null float64
9 ocean_proximity 20640 non-null object
dtypes: float64(9), object(1)
memory usage: 1.6+ MB
Membuat Scatter Plot
Kita akan memilih tiga kolom numerik; median_house_value
, housing_median_age
, dan median_income
, untuk ploting. Perlu diingat bahwa Pandas plot-nya tergantung pada Matplotlib, jadi perlu diimpor terlebih dahulu.
import matplotlib.pyplot as plt
from pandas.plotting import scatter_matrix
features = ['median_house_value', 'housing_median_age', 'median_income']
scatter_matrix(data[features])
plt.show()
Output:
Setiap scatter plot dalam matrix membantu kita memahami korelasi antara pasang atribut yang sesuai. Seperti tampak, median_income
dan median_house_value
memiliki korelasi kuat. Diagonal utama berisi histogram untuk setiap atribut.
Dengan demikian, analisis korelasi menggunakan Pandas dapat membantu kita memahami hubungan antara fitur-fitur dalam dataset.