和風ましらに

機械学習とか勉強したことを書き認めるブログ

Seabornによるグラフの作成 ~factorplot関数~

グラフを作成する際に、良く使うseabornを紹介します。 seabornは簡単に統計グラフを書くことができる関数を多数提供しています。

ここでは、factorplot関数を使ったグラフ作成を中心に紹介します。

import seaborn as sns

df = sns.load_dataset("iris")  #データ準備
df['test'] = df['petal_length'] > 3.5
df.head()
   sepal_length    sepal_width petal_length    petal_width species test
0  5.1    3.5    1.4    0.2    setosa  False
1  4.9    3.0    1.4    0.2    setosa  False
2  4.7    3.2    1.3    0.2    setosa  False
3  4.6    3.1    1.5    0.2    setosa  False
4  5.0    3.6    1.4    0.2    setosa  False

factorplot関数

factorplot関数は、 引数に

  • data:使用する元のデータ
  • x:x軸に使用するデータ。使用する元のデータのカラム名から選択
  • y:y軸に使用するデータ。使用する元のデータのカラム名から選択
  • kind:作成するグラフの種類を指定。棒グラフや箱ひげ図など様々なグラフを作成できる

kind = 'bar'にすると以下のような棒グラフが作成できる。

(例)
sns.factorplot(data = df, x = 'species', y = 'petal_length', kind = 'bar')

snsborn_bar

さらに引数hueに、カテゴリデータが格納された列の列名を指定すると、そのカテゴリごとに色分けしたグラフが生成される

(例)
sns.factorplot(data = df, x = 'species', y = 'petal_length', hue = 'test', kind = 'bar')

snsborn_bar_hue

kind = 'box'にすると以下のような箱ひげ図が作成できる。

snsborn

他にも、kind = 'violin'にするとヴァイオリンプロットができたりするが、自分はあまり使用しないので割愛します。