Как построить кривую логистической регрессии в python


Вы можете использовать функцию regplot() библиотеки визуализации данных seaborn, чтобы построить кривую логистической регрессии в 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

Не стесняйтесь выбирать цвета, которые вы хотите в сюжете.

Дополнительные ресурсы

Следующие руководства предоставляют дополнительную информацию о логистической регрессии:

Введение в логистическую регрессию
Как сообщить о результатах логистической регрессии
Как выполнить логистическую регрессию в Python (шаг за шагом)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *