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

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

Вы можете использовать функцию regplot() из библиотеки визуализации данных Seaborn для построения кривой логистической регрессии в Python:

import seaborn as sns

sns.regplot (x=x, y=y, data=df, logistic= True , ci= None )

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: построение кривой логистической регрессии в Python

В этом примере мы будем использовать набор данных по умолчанию из книги Introduction to Statistical Learning.Мы можем использовать следующий код для загрузки и просмотра сводки набора данных:

#import dataset from CSV file on Github
url = "https://raw.githubusercontent.com/Statology/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 (шаг за шагом)

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.