Як побудувати криву логістичної регресії в 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/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 ) 

На осі абсцис відображаються значення змінної предиктора «баланс», а на осі у — прогнозована ймовірність дефолту.

Ми чітко бачимо, що більш високі рівноважні значення пов’язані з більшою ймовірністю того, що особа не виконає зобов’язання.

Зауважте, що ви також можете використовувати 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 (крок за кроком)

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *