seabornを用いたデータの可視化

今回はseabornを用いたデータの可視化方法をチュートリアルに沿って試してみます。業務で可視化の重要性を改めて痛感したため復習兼ねて行っていきます。

※このブログの内容は個人の意見・見解となります。また、記事の内容の正確性については保証いたしません。本ブログの目的は分析結果をアウトプットしていくことによる自身のデータ分析力向上を主としています。誤りや違うアプローチの方が良いという事も多分にあると思います。後学のため、「もっとこうしたらいい」や誤りを見つけた場合はコメント欄などでお知らせいただけると有難いです。

seabornチュートリアル:https://seaborn.pydata.org/tutorial/introduction.html

○sns.replot()
kindに引数を渡すことで散布図、折れ線グラフの2つを作成することができます。
colではカテゴリ毎に分けてグラフを表示したい場合に使用します。今回はtimeにすることでdinner時とlunch時に分けてグラフを表示しています。
hueではカテゴリ毎に分けてグルーピングしてくれます。今回はsmokerにするためにYesとNoで色を分けています。
styleではプロットするマーカーの形をカテゴリ毎に変更することができます。

ちなみに、自動で統計値を表すことも可能です。

○sns.set_theme(), set_style()
sns.relplot()などグラフを作成する際のコードの前に記述することで簡単に見た目を整えることができます。
sns.set_theme()ではグレーの背景に白のグリッド線などが簡単に実行できます。
上記で作成していた背景やグリッド線が無いグラフと比べるとなんだか”っぽい”グラフができます。
sns.set_style()では引数にdarkgrid、whitegrid、dark、whiteを入れることで見た目を変更できます。グリッド線は要らない時などはこちらを使うと良いです。また、下記に例がありますが散布図と箱ひげ図ではレイアウトが異なるようにグラフに合わせて調整してくれるため便利です。

○sns.lmplot()
sns.lmplot()では回帰モデルの可視化が可能です。

○sns.displot()
こちらではヒストグラムを作成することができます。また、kindを変更することで累積分布、カーネル密度も表示することが可能です。

○補助線の追加
業務でグラフを作成していると補助線を引きたくなることが多々あります。
seabornで直接作成することは出来ないのですがmatplotlibを使うことでseabornで作成したグラフに補助線を追加することができます。

○まとめ
今回はseabornのチュートリアルを元にグラフのレイアウトを簡単に整える方法を見ていきました。一番重要なのは数値から有益な情報を見出すことですが、関係性を”見やすく”グラフ化することは解釈や他者への説明時に重要です。これからも可視化の方法については常に学んでいきたいと思います。

○最後に

このような形で分析した結果や試してみたことを週に1回(目標)ペースで掲載しています。データ分析のキャリアを歩み始めたのですが、データの解釈、分析力が低いと感じ今回、このような形でアウトプットをしていくことにしたため、ぜひ、アドバイスやご指摘をいただけると幸いです。