当前位置: 首页 > news >正文

R语言实现计算净重新分类指数(NRI)和综合判别改善指数(IDI)

两个模型比较,与第一个模型相比,NRI=(重新分对的 - 重新分错的)/总人数。IDI=(新模型患者平均预测概率-旧模型患者平均预测概率)-(新模型非患者平均预测概率-旧模型非患者平均预测概率)。NRI=0无改善,>0新模型优于旧模型。IDI正值且越大越好。

1、非生存资料:广义线性模型

library(PredictABEL)
#数据集
data1<-data.frame(a=rnorm(n=1000,mean=6,sd=5),b=rnorm(1000,30,9),c=rnorm(1000,17,8),cOutcome=sample(c(0,1),1000,replace=T))
#建模
model_1<-glm(cOutcome~.,data1,family="binomial")
model_2<-glm(cOutcome~a+c,data1,family="binomial")
#计算NRI和IDI
pre1<-predRisk(model_1)
pre2<-predRisk(model_2)#=model_2$fitted.values
reclassification(data = data1, cOutcome = 4, predrisk1 = pre1, predrisk2 = pre2, cutoff = c(0,0.6,1))

NRI<0,第二个模型较第一个模型差,降低了0.23%(IDI),但是均为统计学意义。

2、生存资料

#生存资料:CoIDI_NRI回归
library(survival)
data(cancer)
colnames(lung)
lung<-na.omit(lung)
coIDI_NRI1<- coIDI_NRIph(Surv(time, status) ~age+ph.ecog,data=lung,IDI_NRI=T)
coIDI_NRI2 <- coIDI_NRIph(Surv(time, status) ~.,data=lung,IDI_NRI=T)
#install.packages("nricens")
#1 利用nricens包
library(nricens)
nricens(mdl.std = coIDI_NRI1, mdl.new = coIDI_NRI2, t0 = 100,cut = c(0.2, 0.4),niter = 10)
#2 利用survIDINRI包
#install.packages("survIDINRI")
library(survIDINRI)
help(package="survIDINRI")
data_2 <- lung[,c("time","status")]
covs0 <- lung[,c("age","sex")]
covs1 <- lung[,c("age","sex","ph.ecog","ph.karno")]
IDI_NRI<-IDI.INF(data_2,covs0 = as.matrix(covs0),covs1=as.matrix(covs1), t0=500, npert=10)
IDI.INF.OUT(IDI_NRI)

 

 

http://www.lryc.cn/news/125545.html

相关文章:

  • 【面试总结】八股①
  • AI绘画 | 一文学会Midjourney绘画,创作自己的AI作品(快速入门+参数介绍)
  • MongoDB 数据库详细介绍
  • Qt在mac安装
  • STM32 F103C8T6学习笔记1:开发环境与原理图的熟悉
  • 【Linux命令详解 | ps命令】 ps命令用于显示当前系统中运行的进程列表,帮助监控系统状态。
  • “超越传统的HTTP请求:深度解析Axios,打造前端开发的终极利器“
  • 【Tomcat】tomcat的多实例和动静分离
  • Python爬虫IP代理池的建立和使用
  • Java面试题(dubbo)
  • JVM源码剖析之Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded异常
  • 使用PDF文件入侵任何操作系统
  • 强训第32
  • vue3 setup+Taro3 调用原生小程序自定义年月日时分多列选择器,NutUI改造
  • git命令使用
  • 每日记--前端解决方案--el-select下拉样式-el-option内容过长-鼠标悬停到文字不修改光标样式-设置透明
  • Windows系统Git安装教程(详细Git安装过程)
  • 前后端分离------后端创建笔记(11)用户删除
  • 24、springboot的自动配置01--类条件注解@ConditionalOnClass、bean条件注解@ConditionalOnBean
  • 婚恋交友h5多端小程序开源版开发
  • uniapp案例30余种实战项目
  • 回归预测 | MATLAB实现GRNN广义回归神经网络多输入多输出预测
  • 从零开始学习VBA(一)
  • Kotlin Executors线程池newSingleThreadExecutor单线程
  • ZooKeeper介绍
  • 首起针对国内金融企业的开源组件投毒攻击事件
  • 源于传承,擎领未来,新架构、新工艺下的“换心工程”——金融电子化访中电金信副总经理、研究院院长况文川
  • pytest数据驱动(最简单)
  • 分布式 - 服务器Nginx:一小时入门系列之代理缓冲与缓存
  • 什么是集成学习算法