線性模型與二元反應變數
在影片中,你看到把線性模型套用到二元反應變數會如何很快出問題。你也學到,根據線性擬合線可以得到配適值 $\hat{y}$,但這與問題的邏輯不符,因為反應變數只能取 0 與 1。
使用預先載入的 crab 資料集,你將在 GLM 架構下,以 x 作為自變數來建模 y,並觀察這種效應。
回顧 GLM 的模型表示法:
glm(formula = 'y ~ X', data = my_data, family = sm.families.____).fit()
其中你需要指定 formula、data,以及 family。
另外,回想以下對應關係:
- Gaussian family 對應到線性模型(GLM 的一個特例)
- Binomial family 對應到邏輯斯迴歸模型。
本練習屬於課程
Generalized Linear Models in Python
練習說明
- 使用
crab資料集,定義模型 formula,讓y由width預測。 - 若要用 GLM formula 配適「線性模型」,在 family 引數使用
Gaussian(),此假設 y 為連續且近似常態分配。 - 若要用 GLM formula 配適「邏輯斯模型」,在 family 引數使用
Binomial()。 - 使用
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(____.____)