Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python Pandas・Seabornのswarmplotで2つのカテゴリ変数を使ってデータをグループ化する方法

Seabornのスウォームプロット(Swarm Plot)は、点が重ならないように配置されたカテゴリ別散布図を描画するための機能です。この描画には seaborn.swarmplot() を使用します。スウォームを2つのカテゴリ変数でグループ化したい場合は、swarmplot()xy、または hue パラメータにそれらの変数を指定します。

ここでは、CSVファイル「Cricketers2.csv」に保存されたデータセットを例に説明します。

必要なライブラリのインポート

まず、必要なライブラリをインポートします。

import seaborn as sb
import pandas as pd
import matplotlib.pyplot as plt

CSVファイルからデータを読み込む

pd.read_csv() を使って、CSVファイルのデータをPandas DataFrameに読み込みます。

dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\Cricketers2.csv")

2つのカテゴリ変数でスウォームをグループ化する

x軸に「Role(役割)」、y軸に「Matches(試合数)」を設定し、さらに hue パラメータに「Academy(アカデミー)」を指定することで、2つのカテゴリ変数によるグループ化を実現できます。

sb.swarmplot(x = "Role", y = "Matches", hue = "Academy", data = dataFrame)

サンプルコード全体

以下が完全なコード例です。

import seaborn as sb
import pandas as pd
import matplotlib.pyplot as plt

# CSVファイルからデータをPandas DataFrameに読み込む
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\Cricketers2.csv")

# テーマを設定
sb.set_theme(style="whitegrid")

# 2つのカテゴリ変数でグループ化したスウォームプロットを作成
sb.swarmplot(x = "Role", y = "Matches", hue = "Academy", data = dataFrame)

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

実行結果

上記のコードを実行すると、役割ごとに試合数がプロットされ、さらにアカデミーの違いが色分けされたスウォームプロットが出力されます。これにより、カテゴリ間の分布の違いをひと目で把握できるようになります。

Python Pandas・Seabornのswarmplotで2つのカテゴリ変数を使ってデータをグループ化する方法

  1. Python Pandas入門:Seabornで水平バープロットを描画する方法

    Seabornのバープロット(棒グラフ)は、点推定値と信頼区間を長方形のバーとして視覚的に表現するための機能です。水平方向のバープロットを作成するには、seaborn.barplot()関数を使用します。この記事では、CSVファイル「Cricketers2.csv」というデータセットを例に、水平バープロットの描画手順を解説します。1. 必要なライブラリのインポートまず、Seaborn・Pandas・Matplotlibの3つのライブラリをインポートします。import seaborn as sb import pandas as pd import matplotlib.pyplot as p

  2. Python Pandas入門:Seabornで箱ひげ図の上にスウォームプロット(観測値の群れ)を重ねて描画する方法

    データ分析において、分布の全体像を把握しながら個々のデータポイントも確認したい場面は多くあります。Seabornのスウォームプロット(Swarm Plot)は、点同士が重ならないように配置されたカテゴリ別散布図を描画する機能で、seaborn.swarmplot()を使用して実現できます。 本記事では、seaborn.boxplot()で描いた箱ひげ図の上に、このスウォームプロットを重ねて表示する方法を解説します。箱ひげ図だけでは見えない外れ値やデータの偏りを、視覚的に把握できるようになります。 前提条件と準備 まず、必要なライブラリをインポートします。Seaborn、Pandas、NumPy