seaborn.lmplot()関数を使用してグラフをプロットする

Manav Narula 2021年11月20日
seaborn.lmplot()関数を使用してグラフをプロットする

seaborn モジュールは、Python で統計プロットを作成するために使用されます。これは matplotlib モジュール上に構築されているため、非常に簡単に使用できます。

seaborn.lmplot() 関数は、指定されたデータを使用して基本的な散布図を FacetGrid に作成します。

次のコードを参照してください。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import random

x = range(50)
y = random.sample(range(100), 50)
cat = [i for i in range(2)] * 25
df = pd.DataFrame({"x": x, "y": y, "Category": cat})

sns.lmplot(x="x", y="y", data=df, fit_reg=False, hue="Category")

Seaborn の lmplot 関数

ただし、この関数の使用は、散布図のプロットを超えています。また、プロットにオプションの回帰直線をプロットすることにより、データ間の関係を理解するために使用することもできます。ロジスティック回帰にも使用できます。

単純な回帰を実行してデータをプロットするためにも使用される seaborn.regplot() 関数とは異なり、seaborn.lmplot() 関数は seaborn.FacetGrid() クラスを seaborn.regplot() 関数と組み合わせます。

FacetGrid() は、データ分布と他のデータサブセットとの関係を視覚化するために使用され、複数のプロットのグリッドを作成するために使用できます。これは、行、列、および色相を提供する 3つの軸で機能します。複雑なデータセットを扱う場合に非常に便利です。

seaborn.lmplot() 関数でさまざまなパラメーターを使用して、最終的な図をカスタマイズすることもできます。プロットの色など、必要なカスタマイズを辞書のキーと値のペアとして line_kws および scatter_kws パラメーターに提供できます。

以下のコードでは、この関数を使用して回帰直線を使用してグラフをプロットします。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import random

x = range(50)
y = random.sample(range(100), 50)
cat = [i for i in range(2)] * 25
df = pd.DataFrame({"x": x, "y": y, "Category": cat})

sns.lmplot(x="x", y="y", data=df, hue="Category")

Seaborn の lmplot 関数

fit_reg パラメータはデフォルトで True に設定されていることに注意してください。データセットには複数のカテゴリがあったため、複数の回帰直線をプロットすることができました。hue パラメーターを削除した場合、単一の回帰プロットが得られます。さらに、回帰にも多くのパラメーターを使用できます。これらの一部には、データにノイズを追加するために使用される jitter 引数、または特定の推定値に対してプロットするために使用される estimator パラメーターが含まれます。

著者: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn