首页 > 其他分享 >R语言群组变量选择、组惩罚group lasso套索模型预测分析新生儿出生体重风险因素数据和交叉验证、可视化

R语言群组变量选择、组惩罚group lasso套索模型预测分析新生儿出生体重风险因素数据和交叉验证、可视化

时间:2023-11-06 16:46:26浏览次数:43  
标签:语言 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指标

标签:语言,group,套索,模型,群组,拟合,回归,lasso
From: https://www.cnblogs.com/tecdat/p/17813095.html

相关文章

  • UNION和GROUP BY连用 导致的无法谓词推入问题
    问题概述在分析客户环境的一条SQL时,发现了无法做谓词推入的现象。造成视图中的大表访问比较低效。故此对案例做了进一步分析及测试。以确定问题原因。问题SQL:SELECTSUM("A2"."PREM")FROM((SELECT"A5"."AGENT_ID",SUM("A5"."PREM")"PREM"FROMQUERY_DES......
  • Hive / ClickHouse 行转列函数 collect_set() / groupUniqArray() 入门
    Hive/ClickHouse行转列函数collect_set()/groupUniqArray()入门在数据处理和分析中,我们经常会遇到需要将一行数据转换为多列的情况。在Hive和ClickHouse中,可以使用collect_set()和groupUniqArray()函数来实现行转列操作。collect_set()1.功能说明collect_set()函......
  • ELIC: Efficient Learned Image Compression with Unevenly Grouped Space-Channel Co
    abstruct\(\quad\)受能量压缩表现的启发,提出了不均匀通道情况自适应编码.结合不均匀分组模型和现有上下文模型,获得一种空间通道上下文自适应模型,来提高编码性能,而不影响其运行时间。\(\quad\)这种模型支持预览解码和渐进解码。introduction学习图像压缩中最重要的技术联合前......
  • Java 通过collectors.groupingBy根据某个字段统计
    要使用Collectors.groupingBy根据某个字段统计,你可以通过提供一个函数来指定分组的条件。假设你有一个包含Person对象的列表,每个对象都有age字段表示年龄,你想要根据年龄分组,并统计每个年龄组的人数。以下是一个使用Collectors.groupingBy的示例代码:importjava.util.Arrays;imp......
  • Java 使用`Collectors.groupingBy`计算百分比
    要使用Collectors.groupingBy计算百分比,你需要先对数据进行分组,然后计算每个组内元素的百分比。假设你有一个包含整数的列表,你想要按照它们的奇偶性进行分组,并计算每个组内元素的百分比。以下是一个使用Collectors.groupingBy和自定义收集器的示例代码:importjava.util.Arrays;......
  • 解决MYSQL查询报错 Expression #4 of SELECT list is not in GROUP BY clause and con
    原因:在MySQL5.7.5后,默认开启了ONLY_FULL_GROUP_BY,所以导致了之前的一些SQL无法正常执行,其实,是我们的SQL不规范造成的,因为groupby之后,返回的一些数据是不确定的,所以才会出现这个错误。执行下面的命令后,重启你的代码,就可以了selectversion(),@@sql_mode;SETsql_mode=(SELECTRE......
  • SharePoint 2019开发:如何通过脚本来变更SharePoint Group的 Permission Level
    Blog链接:https://blog.51cto.com/13969817很多企业出于安全管理需要,ITadmin需要根据SecurityPolicy或者审计要求定期批量的修改SharePoint权限,比如添加或者删除某个用户,或者更换某个Group的Permissionlevel等等,如果单纯的修改一个网站,那么我们可以直接到SiteSettings的Permiss......
  • Python用正则化Lasso、岭回归预测房价、随机森林交叉验证鸢尾花数据可视化2案例
    机器学习模型的表现不佳通常是由于过度拟合或欠拟合引起的,我们将重点关注客户经常遇到的过拟合情况。过度拟合是指学习的假设在训练数据上拟合得非常好,以至于对未见数据的模型性能造成负面影响。该模型对于训练数据中没有的新实例的泛化能力较差。复杂模型,如随机森林、神经网络和X......
  • 十一、LINQ基础—GroupBy子句
    一、简介group子句返回一个IGrouping(TKey,Telement)对象序列,编译时,group子句被转换成对GroupBy方法的调用。二、案例案例一:根据首字母分组,并打印到控制台//数据源string[]fruits={"apple","banana","peach","orange","melon","lemon"};//分组查询的查询语句......
  • EF Core无法翻译groupby等子查询
    烦人的表达式转化错误varquery1=emps.Grouby(v=>v.DeptId).Select(g=>new{DeptId=g.Key,Salary=g.Max(x=>x.Salary);varresult=fromdindeptsjoinqinquery1ond.Idequalsq.DeptIdselectnew{d.Name,q.Salary};上面代码运行起......