欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

校准曲线

最编程 2024-02-11 20:44:37
...

下面给大家手动画一个校准曲线

两种画法,差别不大,主要是分组方法不一样,第2种分组方法是大家常见的哦~

如果你还不懂为什么我说校准曲线是散点图,建议你先看看一些基础知识:x一文搞定临床预测模型的评价,看了不吃亏。

calibration_df <- pred_rf %>% 
   mutate(pass = if_else(play_type == "pass"10),
          pred_rnd = round(.pred_pass, 2)
          ) %>% 
  group_by(pred_rnd) %>% 
  summarize(mean_pred = mean(.pred_pass),
            mean_obs = mean(pass),
            n = n()
            )

ggplot(calibration_df, aes(mean_pred, mean_obs))+ 
  geom_point(aes(size = n), alpha = 0.5)+
  geom_abline(linetype = "dashed")+
  theme_minimal()
plot of chunk unnamed-chunk-17
plot of chunk unnamed-chunk-17

第2种方法:

cali_df <- pred_rf %>% 
  arrange(.pred_pass) %>% 
  mutate(pass = if_else(play_type == "pass"10),
         group = c(rep(1:249,each=92), rep(250,87))
         ) %>% 
  group_by(group) %>% 
  summarise(mean_pred = mean(.pred_pass),
            mean_obs = mean(pass)
            )


cali_plot <- ggplot(cali_df, aes(mean_pred, mean_obs))+ 
  geom_point(alpha = 0.5)+
  geom_abline(linetype = "dashed")+
  theme_minimal()

cali_plot
plot of chunk unnamed-chunk-18
plot of chunk unnamed-chunk-18

两种方法差别不大,效果都是很好的,这就说明,好就是好,不管你用什么方法,都是好!如果你的数据很烂,那大概率你的结果也是很烂!不管用什么方法都是烂!

最后,随机森林这种方法是可以计算变量重要性的,当然也是能把结果可视化的。

顺手给大家演示下如何可视化随机森林结果的变量重要性:

library(vip)

fit_rf %>% 
  extract_fit_parsnip() %>% 
  vip(num_features = 10)
plot of chunk unnamed-chunk-19
plot of chunk unnamed-chunk-19

所以,校准曲线的画法,你学会了吗?

有问题欢迎评论区留言!

加群即可免费获得示例数据!

本文首发于公众号:医学和生信笔记

医学和生信笔记,专注R语言在临床医学中的使用,R语言数据分析和可视化。主要分享R语言做医学统计学、meta分析、网络药理学、临床预测模型、机器学习、生物信息学等。