# 安装包
if (!requireNamespace("rms", quietly = TRUE)) {
install.packages("rms")
}if (!requireNamespace("ggplotify", quietly = TRUE)) {
install.packages("ggplotify")
}
# 加载包
library(rms)
library(ggplotify)
诺莫图 (逻辑回归)
注记
Hiplot 网站
本页面为 Hiplot Nomogram (Logistic)
插件的源码版本教程,您也可以使用 Hiplot 网站实现无代码绘图,更多信息请查看以下链接:
环境配置
系统: Cross-platform (Linux/MacOS/Windows)
编程语言: R
依赖包:
rms
;ggplotify
数据准备
# 加载数据
<- read.delim("files/Hiplot/130-nomogram-logistic-data.txt", header = T)
data
# 整理数据格式
<- datadist(data)
dd options(datadist = "dd")
## 建立 Logistic 模型并运行列线图
<- lrm(data=data, as.formula(paste(
logistic_res colnames(data)[1], " ~ ",
paste(colnames(data)[2:length(colnames(data))],
collapse = "+"
)
))
)<- nomogram(logistic_res, maxscale = 100,
logistic_nomo fun= function(x)1/(1+exp(-x)), lp=F, funlabel="Dead Risk",
fun.at=c(.001,.01,.05,seq(.1,.9,by=.1),.95,.99,.999)
)
# 查看数据
head(data)
status age sex ph.ecog ph.karno pat.karno meal.cal wt.loss
1 2 74 1 1 90 100 1175 NA
2 2 68 1 0 90 90 1225 15
3 1 56 1 0 90 90 NA 15
4 2 57 1 1 90 60 1150 11
5 2 60 1 0 100 90 NA 0
6 1 74 1 1 50 80 513 0
可视化
# 诺莫图 (逻辑回归)
<- as.ggplot(function() {
p plot(logistic_nomo,
scale = 1
)title(main = "Nomogram (Logistic)")
})
p
