高度な可視化技術 | Seabornの応用 | Python本格超入門

現在作成中です。今後加筆修正してまいります。
スポンサーリンク
スポンサーリンク

高度な可視化技術 – Seabornの応用

Seabornは、Matplotlibの上に構築されたPythonのデータ可視化ライブラリで、統計的なプロットを簡単に作成できる優れたツールです。特に、データセットの関係性や分布を視覚化する際に力を発揮します。本記事では、Seabornを使用した高度な可視化技術を紹介し、データサイエンスにおける可視化の技術を向上させる方法を学びます。

Seabornのインストール

Seabornを使用するには、以下のコマンドでインストールを行います。

pip install seaborn

ペアプロット (Pair Plot)

ペアプロットは、複数の数値データの相関関係や分布を確認するために使われます。各変数の組み合わせごとに散布図を表示し、対角線にはその変数の分布を表示します。

import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
import pandas as pd

# データセットの読み込み
iris = load_iris()
iris_df = pd.DataFrame(iris.data, columns=iris.feature_names)

# ペアプロットの作成
sns.pairplot(iris_df)

# グラフの表示
plt.show()

コードの説明

  • sns.pairplot():複数の変数の関係を視覚化するペアプロットを作成します。
  • iris_df:Irisデータセットをデータフレームに変換したものです。
  • plt.show():作成したグラフを表示します。

ヒートマップ (Heatmap)

ヒートマップは、データの相関行列を視覚化するのに最適です。特に、数値データ間の相関関係を色で表現し、一目で関係性がわかるようになります。

import seaborn as sns
import matplotlib.pyplot as plt

# データの準備
data = sns.load_dataset('flights')
pivot_data = data.pivot("month", "year", "passengers")

# ヒートマップの作成
sns.heatmap(pivot_data, annot=True, fmt="d", cmap="YlGnBu")

# グラフの表示
plt.show()

コードの説明

  • sns.heatmap():ヒートマップを作成します。
  • pivot_data:データセットをピボット形式に変換したものです。行がmonth、列がyear、値がpassengersとなっています。
  • annot=True:各セルに値を表示します。
  • cmap="YlGnBu":カラーマップを指定しています。ここではYlGnBu(黄緑青)を使用しています。

箱ひげ図 (Box Plot)

箱ひげ図は、データの分布を視覚化する際に使われ、四分位数や外れ値の確認に役立ちます。

import seaborn as sns
import matplotlib.pyplot as plt

# データの準備
data = sns.load_dataset("tips")

# 箱ひげ図の作成
sns.boxplot(x="day", y="total_bill", data=data)

# グラフの表示
plt.show()

コードの説明

  • sns.boxplot():指定したデータの箱ひげ図を作成します。
  • x="day":曜日ごとのデータをX軸に表示します。
  • y="total_bill":請求額をY軸に表示します。
  • data=data:データセットを指定しています。

カテゴリカルプロット (Categorical Plot)

Seabornは、カテゴリカルデータの可視化に優れた機能を持っています。ここでは、カテゴリカルプロットの例として、カテゴリごとのデータを視覚化します。

import seaborn as sns
import matplotlib.pyplot as plt

# データの準備
data = sns.load_dataset("tips")

# カテゴリカルプロットの作成
sns.catplot(x="day", y="total_bill", hue="sex", data=data, kind="bar")

# グラフの表示
plt.show()

コードの説明

  • sns.catplot():カテゴリカルデータを使用して棒グラフを作成します。
  • hue="sex":性別で色分けします。
  • kind="bar":棒グラフ形式でデータを表示します。

まとめ

Seabornを使用することで、データの関係性や分布を簡単にかつ視覚的に理解することができます。特に、ペアプロットやヒートマップ、箱ひげ図、カテゴリカルプロットは、データ分析において非常に役立つツールです。Seabornのカスタマイズ機能を活用することで、データの特性をより正確に把握することが可能になります。