Pandasで散布図行列(scatter_matrix)を描く
Pandasで散布図行列(scatter_matrix)を描く
概要
Pandasを使用して、散布図行列(scatter_matrix)を描く方法を示す。 これを使うことで、特徴量が多いデータに対して可視化が可能となる。
環境
- Python ver : 3.6.9
- Pandas ver : 0.25.3
- scikit-learn ver : 0.21.3
散布図行列の描画
インポート
import pandas as pd from sklearn import datasets import matplotlib.pyplot as plt
データの準備
X,y = datasets.make_hastie_10_2(n_samples=100,random_state=None)
print(X.shape) # (100, 10) print(y.shape) # (100,)
print(y) #array([ 1., -1., -1., -1., -1., -1., 1., 1., -1., -1., -1., 1., -1., -1., 1., 1., -1., -1., 1., 1., 1., 1., 1., -1., 1., 1., -1., 1., 1., 1., 1., 1., -1., -1., -1., 1., -1., -1., -1., -1., -1., -1., -1., -1., -1., -1., 1., -1., 1., -1., -1., 1., -1., 1., 1., 1., -1., -1., 1., 1., -1., -1., 1., -1., 1., -1., -1., 1., -1., 1., -1., -1., 1., 1., 1., 1., -1., 1., 1., 1., 1., -1., -1., -1., -1., 1., -1., 1., 1., -1., 1., -1., 1., 1., 1., 1., -1., -1., 1., 1.])
データからpandasのDataFrameを作成
dataframe = pd.DataFrame(data=X)
散布図行列(scatter_matrix)の描画
datalabel = pd.Series(data=y) gr = pd.plotting.scatter_matrix(dataframe,c=datalabel,figsize=(12,12)) plt.show()