この記事では、Pythonの可視化ライブラリであるSeabornを用いてボックスプロットを作成するテクニックについて詳しく解説します。基本的なボックスプロットの作成方法から、カスタマイズ方法、さらには実用的な応用例まで、一通りの知識とスキルを身につけられる内容となっています。
Seabornとは
SeabornはPythonで使用できるデータ可視化ライブラリです。Matplotlibをベースにしており、より美しいグラフや多機能なプロットが可能です。
ボックスプロットとは
ボックスプロットはデータの分布を視覚的に理解するための一つの手法です。最小値、第1四分位数、中央値(メジアン)、第3四分位数、最大値といった統計量を一目で確認することができます。
基本的なボックスプロットの作成
必要なライブラリのインポート
まずはSeabornと、データ操作用のライブラリであるPandasをインポートします。
import seaborn as sns
import pandas as pd
データセットの読み込み
サンプルとして、Seabornに内蔵されている「tips」データセットを使用します。
# tipsデータセットを読み込む
df = sns.load_dataset('tips')
ボックスプロットの作成
以下のコードで基本的なボックスプロットを作成します。
# ボックスプロットを作成
sns.boxplot(x='day', y='total_bill', data=df)
このコードでは、曜日(day)ごとの会計総額(total_bill)をボックスプロットで表示しています。
ボックスプロットのカスタマイズ
色の変更
`sns.boxplot()`の`palette`引数を用いることで、色をカスタマイズできます。
# 色をカスタマイズ
sns.boxplot(x='day', y='total_bill', data=df, palette='coolwarm')
水平方向にプロット
`orient`引数を`’h’`に設定すると、ボックスプロットを水平方向に表示できます。
# 水平方向にプロット
sns.boxplot(x='total_bill', y='day', data=df, orient='h')
応用例
複数のカテゴリに分けてプロット
`sns.catplot()`を使用することで、さらに複雑なカテゴリ分けが可能です。
# 複数のカテゴリに分けてプロット
sns.catplot(x='day', y='total_bill', hue='sex', kind='box', data=df)
この例では、曜日と性別(sex)によって会計総額を分けています。
アウトライヤーの表示制御
`sns.boxplot()`の`showfliers`引数を使用して、アウトライヤー(外れ値)の表示を制御できます。
# アウトライヤーを非表示にする
sns.boxplot(x='day', y='total_bill', data=df, showfliers=False)
まとめ
Seabornを使用したボックスプロットの作成方法を基本から応用まで解説しました。この知識を用いて、データの特性をより深く理解する手助けにしてください。
コメント