ПочатиПочніть безкоштовно

Лінійна модель і бінарна залежна змінна

У відео ви бачили приклад підгонки лінійної моделі до бінарної залежної змінної та те, як швидко це може призвести до помилок. Ви дізналися, що за лінійного наближення можна отримати підганяні значення \(\hat{y}\), які суперечать логіці задачі, адже залежна змінна набуває лише значень 0 і 1.

Використовуючи попередньо завантажений набір даних crab, ви дослідите цей ефект, змоделювавши y як функцію x у межах підходу GLM.

Згадайте, що формулювання моделі GLM таке:

glm(formula = 'y ~ X', data = my_data, family = sm.families.____).fit()

де ви задаєте formula, data і family.

Також згадайте, що GLM із:

  • сім'єю Gaussian — це лінійна модель (окремий випадок GLM)
  • сім'єю Binomial — це модель логістичної регресії.

Ця вправа є частиною курсу

Узагальнені лінійні моделі в Python

Переглянути курс

Інструкції до вправи

  • Використовуючи набір даних crab, задайте формулу моделі так, щоб y передбачався за width.
  • Щоб підганяти лінійну модель у формалізмі GLM, використайте Gaussian() як аргумент family. Це означає, що y є неперервною та приблизно нормально розподіленою.
  • Щоб підганяти логістичну модель у формалізмі GLM, використайте Binomial() як аргумент family.
  • Побудуйте модель за допомогою glm() з відповідними аргументами та скористайтеся print() і summary(), щоб переглянути зведення підганятих моделей.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Define model formula
formula = '____ ~ ____'

# Define probability distribution for the response variable for 
# the linear (LM) and logistic (GLM) model
family_LM = sm.families.____
family_GLM = sm.families.____

# Define and fit a linear regression model
model_LM = glm(formula = ____, data = ____, family = ____).fit()
print(____.____)

# Define and fit a logistic regression model
model_GLM = glm(formula = ____, data = ____, family = ____).fit()
print(____.____)
Редагувати та запускати код