Python でロジスティック回帰曲線をプロットする方法
seaborn データ視覚化ライブラリのregplot()関数を使用して、Python でロジスティック回帰曲線をプロットできます。
import seaborn as sns sns. regplot (x=x, y=y, data=df, logistic= True , ci= None )
次の例は、この構文を実際に使用する方法を示しています。
例: Python でロジスティック回帰曲線をプロットする
この例では、書籍『統計学習入門』のデフォルトデータセットを使用します。次のコードを使用して、データセットの概要を読み込んで表示できます。
#import dataset from CSV file on Github url = "https://raw.githubusercontent.com/Statorials/Python-Guides/main/default.csv" data = pd. read_csv (url) #view first six rows of dataset data[0:6] default student balance income 0 0 0 729.526495 44361.625074 1 0 1 817.180407 12106.134700 2 0 0 1073.549164 31767.138947 3 0 0 529.250605 35704.493935 4 0 0 785.655883 38463.495879 5 0 1 919.588530 7491.558572
このデータセットには、10,000 人の個人に関する次の情報が含まれています。
- デフォルト:個人がデフォルトしたかどうかを示します。
- 学生:個人が学生であるかどうかを示します。
- 残高:個人が保有する平均残高。
- 収入:個人の収入。
「バランス」を使用して特定の個人が債務不履行になる確率を予測するロジスティック回帰モデルを構築したいとします。
次のコードを使用して、ロジスティック回帰曲線をプロットできます。
#define the predictor variable and the response variable
x = data[' balance ']
y = data[' default ']
#plot logistic regression curve
sns. regplot (x=x, y=y, data=data, logistic= True , ci= None )
X 軸は予測変数「バランス」の値を示し、Y 軸は予測されたデフォルト確率を表示します。
均衡値が高くなるほど、個人が債務不履行になる確率が高くなることは明らかです。
また、 scatter_kwsとline_kwsを使用して、プロット内の点と曲線の色を変更することもできることに注意してください。
#define the predictor variable and the response variable
x = data[' balance ']
y = data[' default ']
#plot logistic regression curve with black points and red line
sns. regplot (x=x, y=y, data=data, logistic= True , ci= None ),
scatter_kws={' color ': ' black '}, line_kws={' color ': ' red '})
プロット内で必要な色を自由に選択してください。
追加リソース
次のチュートリアルでは、ロジスティック回帰に関する追加情報を提供します。
ロジスティック回帰の概要
ロジスティック回帰結果を報告する方法
Python でロジスティック回帰を実行する方法 (ステップバイステップ)