【Python】Seabornで多項式近似式を可視化する方法を紹介!

こんにちは!

皆さんは、Pythonで多項式近似式を可視化したいと思ったことはありませんか?

Python初心者
多項式近似式を使うと、線形近似式よりよいい感じの回帰ができるね!

Pythonで多項式近似式を可視化するには、Seabornの「regplot()」を使うと簡単に表示することができますよ。

Seabornライブラリのインストールが終わっていない方は、インストールしておきましょう。

今回の記事では、以下の内容について紹介します。

  • regplot()の基本的な使い方
  • regplot()の様々なオプション

多項式近似式を可視化する「regplot()」

多項式近似式を表示するには、「regplot()」を使用します。

regplot()の基本的な使い方

regplot()の基本的な書式は以下になります。

seaborn.regplot(x, y, data, order=数字)

x, yはdata内に存在する表示したいカラム名
dataは表示したいデータ
orderに指定する数字は、多項式の次数です。

以下のプログラムは、irisデータセットの多項式近似式を表示するプログラムです。

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

iris = load_iris()
df = pd.DataFrame(iris.data, columns=iris.feature_names)
df['species'] = iris.target_names[iris.target]

sns.regplot(df.columns[0], df.columns[1], df, order=4)

plt.tight_layout()
plt.show()

実行結果

このように、sepal widthとsepal lengthの多項式近似式が簡単に描くことができます。

様々なオプション

よく使われるオプションを紹介します。

すべてのオプションが気になる方は、公式ドキュメントを参照してください。

オプション 説明 デフォルト値
ci 信頼区間の表示に関係
truncate 近似式の表示の長さに関係 True

ci

「ci」は信頼区間の表示に関係するオプションです。

ciにNoneを指定することで、信頼区間の表示をOFFにすることができます。

sns.regplot(df.columns[0], df.columns[1], df, order=4, ci=None)

実行結果

信頼区間である水色の範囲の表示がされていませんね。

truncate

「truncate」は、近似式の表示の長さに関係するオプションです。

truncateにFalseを指定することで、データの存在する区間より長く近似式を表示することができます。

sns.regplot(df.columns[0], df.columns[1], df, order=4, truncate=False)

実行結果

近似式が、データの範囲以上の、グラフの端まで表示されてますね。

まとめ

今回の記事では、以下の内容を紹介しました。

  • regplot()の基本的な使い方
    x, y, dataを指定
     散布図と、多項式近似式を出力
  • regplot()の様々なオプション
    →信頼区間を非表示etc…
Python初心者
簡単に多項式近似を可視化することができたね!

多項式近似式を簡単に可視化する方法をしっかりと覚えて、データがどのような傾向があるのかをつかむのに役立てましょう!