R語言群組變量選擇、組懲罰group lasso套索模型預測分析新生兒出生體重風

2023-11-06     tecdat拓端

原標題:R語言群組變量選擇、組懲罰group lasso套索模型預測分析新生兒出生體重風

原文連結:http://tecdat.cn/?p=25158

原文出處:拓端數據部落公眾號

本文擬合具有分組懲罰的線性回歸、GLM和Cox回歸模型的正則化路徑。這包括組選擇方法,如組lasso套索、組MCP和組SCAD,以及雙級選擇方法,如組指數lasso、組MCP。還提供了進行交叉驗證以及擬合後可視化、總結和預測的實用程序。

本文提供了一些數據集的例子;涉及識別與低出生體重有關的風險因素。結果是連續測量(bwt,以公斤為單位的出生體重),也可以是二分法(低),即新生兒出生體重低(低於2.5公斤)。

head(X)

原始設計矩陣由 8 個變量組成,此處已將其擴展為 16 個特徵。例如,有多個種族指標函數(「其他」是參考組),並且已經使用多項式對比擴展了幾個連續因素(例如年齡)(樣條曲線會給出類似的結構)。因此,設計矩陣的列被 分組;這就是組的設計目的。分組信息編碼如下:

group

在這裡,組是作為一個因子給出的;唯一的整數代碼(本質上是無標籤的因子)和字符向量也是允許的(然而,字符向量確實有一些限制,因為組的順序沒有被指定)。要對這個數據擬合一個組套索lasso模型。

gLas(X, y,grup)

然後我們可以用以下方法繪製係數路徑

plot

請注意,當一個組進入模型時(例如,綠色組),它的所有係數都變成非零;這就是組套索模型的情況。要想知道這些係數是什麼,我們可以使用coef。

請注意,在λ=0.05時,醫生的就診次數不包括在模型中。

為了推斷模型在各種 λ值下的預測準確性,進行交叉驗證。

cv(X, y, grp)

可以通過coef以下方式獲得與最小化交叉驗證誤差的 λ 值對應的係數 :

coef(cvfit)

預測值可以通過 獲得 predict,它有許多選項:

predict # 對新觀察結果的預測

predicttype="ngroups" # 非零組的數量

# 非零組的身份

nvars # 非零係數的數量

predict(fit # 非零係數的身份

原始擬合(對完整數據集)返回為fit; 其他幾種懲罰是可用的,邏輯回歸和 Cox 比例風險回歸的方法也是如此。

最受歡迎的見解

1.R語言多元Logistic邏輯回歸 應用案例

2.面板平滑轉移回歸(PSTR)分析案例實現

3.matlab中的偏最小二乘回歸(PLSR)和主成分回歸(PCR)

4.R語言泊松Poisson回歸模型分析案例

5.R語言回歸中的Hosmer-Lemeshow擬合優度檢驗

6.r語言中對LASSO回歸,Ridge嶺回歸和Elastic Net模型實現

7.在R語言中實現Logistic邏輯回歸

8.python用線性回歸預測股票價格

9.R語言如何在生存分析與Cox回歸中計算IDI,NRI指標

文章來源: https://twgreatdaily.com/zh-mo/7aa399fb29d436b1c959b2f6db8472bb.html