首页 > 其他分享 >R语言Lasso回归模型变量选择和糖尿病发展预测模型|附代码数据

R语言Lasso回归模型变量选择和糖尿病发展预测模型|附代码数据

时间:2023-06-01 23:12:10浏览次数:62  
标签:语言 模型 Lasso 糖尿病 LASSO 回归 lasso

全文链接:http://tecdat.cn/?p=22721

最近我们被客户要求撰写关于Lasso回归的研究报告,包括一些图形和统计输出。

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)

图片

 
for(i in 1:10){
  plot(x[,i], y)
  abline(lm(y~x[,i])
}

图片

向下滑动查看结果▼

 


点击标题查阅往期内容

图片

基于R语言实现LASSO回归分析

图片

左右滑动查看更多

图片

01

图片

02

图片

03

图片

04

图片

练习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

图片

图片

向下滑动查看结果▼

 


图片

本文摘选 《 R语言Lasso回归模型变量选择和糖尿病发展预测模型 》 ,点击“阅读原文”获取全文完整资料。

图片


点击标题查阅往期内容

【视频】Lasso回归、岭回归正则化回归数学原理及R软件实例
群组变量选择、组惩罚group lasso套索模型预测新生儿出生体重风险因素数据和交叉验证、可视化
【视频】Lasso回归、岭回归等正则化回归数学原理及R语言实例R语言Lasso回归模型变量选择和糖尿病发展预测模型
用LASSO,adaptive LASSO预测通货膨胀时间序列MATLAB用Lasso回归拟合高维数据和交叉验证
群组变量选择、组惩罚group lasso套索模型预测新生儿出生体重风险因素数据和交叉验证、可视化
高维数据惩罚回归方法:主成分回归PCR、岭回归、lasso、弹性网络elastic net分析基因数据
Python高维变量选择:SCAD平滑剪切绝对偏差惩罚、Lasso惩罚函数比较
R使用LASSO回归预测股票收益
广义线性模型glm泊松回归的lasso、弹性网络分类预测学生考试成绩数据和交叉验证
贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析免疫球蛋白、前列腺癌数据
R语言RSTAN MCMC:NUTS采样算法用LASSO 构建贝叶斯线性回归模型分析职业声望数据
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
R语言高维数据惩罚回归方法:主成分回归PCR、岭回归、lasso、弹性网络elastic net分析基因数据(含练习题)
广义线性模型glm泊松回归的lasso、弹性网络分类预测学生考试成绩数据和交叉验证
贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析免疫球蛋白、前列腺癌数据
R语言RSTAN MCMC:NUTS采样算法用LASSO 构建贝叶斯线性回归模型分析职业声望数据
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
R语言高维数据惩罚回归方法:主成分回归PCR、岭回归、lasso、弹性网络elastic net分析基因数据(含练习题)
Python中LARS和Lasso回归之最小角算法Lars分析波士顿住房数据实例
R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析
R语言惩罚logistic逻辑回归(LASSO,岭回归)高维变量选择的分类模型案例
Python中的Lasso回归之最小角算法LARS
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
R语言实现LASSO回归——自己编写LASSO回归算法
r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现
R使用LASSO回归预测股票收益
R语言如何和何时使用glmnet岭回归
R语言中的岭回归、套索回归、主成分回归:线性模型选择和正则化
Python中的ARIMA模型、SARIMA模型和SARIMAX模型对时间序列预测
R语言arima,向量自回归(VAR),周期自回归(PAR)模型分析温度时间序列
【视频】Python和R语言使用指数加权平均(EWMA),ARIMA自回归移动平均模型预测时间序列
Python用ARIMA和SARIMA模型预测销量时间序列数据

标签:语言,模型,Lasso,糖尿病,LASSO,回归,lasso
From: https://www.cnblogs.com/tecdat/p/17450490.html

相关文章

  • 【视频】R语言机器学习高维数据应用:Lasso回归和交叉验证预测房屋市场租金价格
    全文链接:http://tecdat.cn/?p=32646原文出处:拓端数据部落公众号分析师:JunjunLi在这篇文章中,我们将着重探讨高维数据下的机器学习应用,以房屋市场租金价格预测为例。在实际生活中,房屋租金作为一个重要的经济指标,被广泛应用于城市规划、财务投资等方面的决策中。然而,如何准确地预......
  • R语言用线性混合效应(多水平/层次/嵌套)模型分析声调高低与礼貌态度的关系|附代码数据
    全文下载链接:http://tecdat.cn/?p=23681最近我们被客户要求撰写关于线性混合效应的研究报告,包括一些图形和统计输出。线性混合效应模型与我们已经知道的线性模型有什么不同 ( 点击文末“阅读原文”获取完整代码数据******** ) ?线性混合模型(有时被称为"多层次模型"或"层次......
  • 经济学:动态模型平均(DMA)、动态模型选择(DMS)、ARIMA、TVP预测原油时间序列价格|附代
    全文链接:http://tecdat.cn/?p=22458最近我们被客户要求撰写关于动态模型平均的研究报告,包括一些图形和统计输出。本文提供了一个经济案例。着重于原油市场的例子。简要地提供了在经济学中使用模型平均和贝叶斯方法的论据,使用了动态模型平均法(DMA),并与ARIMA、TVP等方法进行比较 (......
  • 数据模型《实体联系模型》
    1.需求分析阶段:根据"软件需求规则说明书"生成er模型2.概念结构阶段:根据"转换规则"把ER模型转成关系模型3.逻辑结构设计阶段:根据"三范式"规则(要求)把关系模型转换成基本表实体-联系模型#基本概念#实体:实体是有别于其他对象的一个事物,比如人,教师,学生,课程,专业。......
  • 模型推理 结果不一致
    背景:1、固定网络部分,微调另外一部分,固定部分包含bn2、网络的fix部分和训练部分封装到一个nn.Module中3、训练过程有推理,在推理的时候Module切换到eval(),推理完Module又切换到train()现象:最原始现象是模型训练完,加载训练完的模型,精度和训练最后的训练精度对不上分析过程:1、......
  • volatile与java内存模型
    一、结论先说结论,volatile能保证可见性和有序性,不能保证原子性。二、volatile的内存语义当写一个volatile变量时,会将变量值刷新回主内存当读一个volatile变更时,会从主内存中读取最新值三、内存屏障是什么?内存屏障是一类同步屏障指令,是cpu或编译器在对内存随机访问操作的一......
  • 二级指针内存模型
    二级指针做输出模型#define_CRT_SECURE_NO_WARNINGS#include<stdlib.h>#include<string.h>#include<stdio.h>//指针做输出:被调用函数分配内存-----OK//指针做输入:主调用函数分配内存//求文件中的两段话的长度intgetMem(char**myp1,int*mylen1,char**myp2,in......
  • 深入探索C++对象模型(十一)执行期语义学(临时对象)
    关于临时对象的几条准则。1. 在某些情况下,编译器可以产生必要的,或者可以带来方便的临时对象,具体行为由编译器来定义。例如,对于如下操作:1.Ta,b;2.Tc=a+b;//Toperator+(constT&,constT&)a.编译器会产生一个临时对象,放置a+b的结果,然后使用T的拷贝构造函数,把临时......
  • 吴恩达教授AI课程:LangChain、扩散模型,用ChatGPT API搭建系统
    家人们,吴恩达教授的AI课程时隔一个月终于又更新了!这次一口气直接推出了三门课,主题包括LangChain、扩散模型,以及用ChatGPTAPI搭建系统。依旧是限时免费,除了扩散模型需要一定知识储备之外,另外两门课新手也能听。有网友为了看完这些课程,直接连觉都不睡了。课程内容这三门课的......
  • 通义千问预体验,如何让 AI 模型应用“奔跑”在函数计算上?
    立即体验基于函数计算部署通义千问预体验:https://developer.aliyun.com/topic/aigc_fcAIGC浪潮已来,从文字生成到图片生成,AIGC的创造力让人惊叹,更多人开始探索如何使用AI提高生产效率,激发更多创作潜能,然而在实际应用中,AI技术的高门槛仍然让很多人望而却步,普通开发者或者没有......