应用|拓端数据tecdat:R语言Lasso回归模型变量选择和糖尿病发展预测模型应用
原文链接:http://tecdat.cn/?p=22721
原文出处:拓端数据部落公众号
Lease Absolute Shrinkage and Selection Operator(LASSO)在给定的模型上执行正则化和变量选择 。 根据惩罚项的大小 , LASSO将不太相关的预测因子缩小到(可能)零 。 因此 , 它使我们能够考虑一个更简明的模型 。 在这组练习中 , 我们将在R中实现LASSO回归 。
练习1 加载糖尿病数据集 。 这有关于糖尿病的病人水平的数据 。 数据为n = 442名糖尿病患者中的每个人获得了10个基线变量、年龄、性别、体重指数、平均血压和6个血清测量值 , 以及感兴趣的反应 , 即一年后疾病进展的定量测量 。 "
接下来 , 加载包用来实现LASSO 。
head(data)
文章图片
练习2 数据集有三个矩阵x、x2和y 。 x是较小的自变量集 , 而x2包含完整的自变量集以及二次和交互项 。
检查每个预测因素与因变量的关系 。 生成单独的散点图 , 所有预测因子的最佳拟合线在x中 , y在纵轴上 。 用一个循环来自动完成这个过程 。
summary(x)
【应用|拓端数据tecdat:R语言Lasso回归模型变量选择和糖尿病发展预测模型应用】
文章图片
- for(i in 1:10){
- plot(x[,i], y)
- abline(lm(y~x[,i])
- }

文章图片
练习3 使用OLS将y与x中的预测因子进行回归 。 我们将用这个结果作为比较的基准 。
lm(y ~ x)

文章图片
练习4 绘制x的每个变量系数与β向量的L1准则的路径 。 该图表明每个系数在哪个阶段缩减为零 。
- plot(model_lasso)

文章图片
练习5 得到交叉验证曲线和最小化平均交叉验证误差的lambda的值 。
plot(cv_fit)

文章图片

文章图片
练习6 使用上一个练习中的lambda的最小值 , 得到估计的β矩阵 。 注意 , 有些系数已经缩减为零 。 这表明哪些预测因子在解释y的变化方面是重要的 。
> fit$beta

文章图片
练习7 为了得到一个更简明的模型 , 我们可以使用一个更高的λ值 , 即在最小值的一个标准误差之内 。 用这个lambda值来得到β系数 。 注意 , 现在有更多的系数被缩减为零 。
lambda.1se

文章图片
beta

文章图片
练习8 如前所述 , x2包含更多的预测因子 。 使用OLS , 将y回归到x2 , 并评估结果 。
summary(ols2)

文章图片

文章图片
练习9 对新模型重复练习-4 。
- lasso(x2, y)
- plot(model_lasso1)

文章图片
练习10 对新模型重复练习5和6 , 看看哪些系数被缩减为零 。 当有很多候选变量时 , 这是缩小重要预测变量的有效方法 。
plot(cv_fit1)

文章图片
beta

文章图片

文章图片

文章图片
最受欢迎的见解
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指标
推荐阅读
- 区块|面向2030:影响数据存储产业的十大应用(下):新兴应用
- 下架|APK Installer 和 WSATools 同时躺枪:冒牌应用登陆微软应用商店
- 苏宁|可循环包装规模化应用 苏宁易购绿色物流再上新台阶
- 软件和应用|AcrylicMenus:让Windows 10右键菜单获得半透明效果
- 选型|数据架构选型必读:2021上半年数据库产品技术解析
- 殊荣|蝉联殊荣!数梦工场荣获DAMA2021数据治理三项大奖
- Tencent|原生版微信上架统信UOS应用商店:适配X86、ARM、LoongArch架构
- 技术|使用云原生应用和开源技术的创新攻略
- 飞腾|原生版微信登陆统信UOS应用商店,已适配X86/ARM/LoongArch架构
- 数据|数智安防时代 东芝硬盘助力智慧安防新赛道