#seabornとは
Pythonのグラフ描画のためのライブラリです。。最も有名なライブラであるmatplotlibのラッパー関数(内包プログラム)という位置づけ。簡単に見た目綺麗なグラフの描画が出来る他、一括での処理などの機能もある程度充実しています。細かく指定して描画するならmatplotlib、簡単に綺麗にならseabornのです。
#ペアプロット(jointplot)
今回のテーマはペアプロットです。seabornで一番有名な機能ではないでしょうか。作成には.pairplot
を使用します。データの相関をつかむ際に活用します。
#準備
まずは、pipでseaborn
のライブラリをインストールして下さい。pip?って方はこちら。
ライブラリをインポートします。seaborn
にsns
という名前をつけてimport
します。
import seaborn as sns
サンプルはタイタニックのデータで試してみます。タイタニックがわからない人は「kaggle タイタニック」で調べて下さい。
pandasでデータフレームを作ります。
dataframe = pd.read_csv('train.csv')
#基本作成
散布図作成には.jointplot
を使用します。基本的に設定するものは、元データとプロットしたい軸になります。
ここではプロット対象の軸としてAge(年齢)、Fare(運賃)、Pclass(等級)を選定し、vars
に設定します。
sns.pairplot(dataframe, vars = ['Age','Fare','Pclass'])
それっぽいグラフが書けました。
グラフの見方ですが、軸にした項目のn×nのマトリクスが作成されます。
同じ軸の交点(青枠の領域)は、その項目単独のマトリクスとなります。
そのほかの領域は、対象となる軸と軸との散布図になります。対角の位置にある散文図は軸を入れ替えた散布図の関係になります。(赤枠は同じ散布図でX軸とY軸が入れ替わっている)
この機能を使うと、項目感の全体像をざっくりと確認することができます。(赤枠の運賃と年齢をみると年齢と運賃の関係にはわかりやすい相関はなさそうだなど。)
hue
のオプションを使うと、Z軸を設定することができます。例としてSex(性別)を追加します。
sns.pairplot(dataframe, vars = ['Age','Fare','Pclass'], hue = 'Sex')
diag_kind="hist"
でヒストグラムに変更することも可能です。
sns.pairplot(dataframe, vars = ['Age','Fare','Pclass'], hue = 'Sex' ,diag_kind="hist")
非常に簡単な構文ですが、詳しくない人にはそれっぽくみえて、やった感がでるのでお勧めです。
他にも色々とオプションは指定できるので、さらに掘り下げたい方は公式ドキュメントをごらん下さい。
#最後に
初心者にもわかるように、Pythonで機械学習を実施する際の必要な知識を簡便に記事としてまとめております。
目次はこちらになりますので、他の記事も参考にして頂けると幸いです。