全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
21579 25
2018-04-11
很多人在用SAS做ROC曲线时肯定很苦恼做出来的图没有直接给出切点值而只给出了AUC值,进而每每到要做ROC曲线时都是将数据导出,用R来进行作图。

但是其实通过SAS的宏程序,我们可以轻松的做出你想要的ROC曲线图,而且功能十分丰富。

宏程序SAS官网有提供下载→http://support.sas.com/kb/25/018.html#req

有一定英语基础的朋友可以阅读其Result页面的例子介绍,看完介绍后你也基本上就能搞懂大部分的功能了。

接下来我们就直入正题,如何作图:
我们先来看下效果图:
第一张为SAS默认样式,后两张为利用宏程序画出的ROC曲线 ROC plot


首先我们需要将宏文件下载,保存为rocplot.sas文件。

然后在SAS中调用该宏
复制代码
然后运行我们的Logistic过程步
复制代码
接着就可以运行宏了
复制代码
你的SAS版本如果是9.2,这时候会报错,ROC曲线无法作图。查看SAS官网的文档我们也发现该宏只支持9.3及以上版本,那是不是用9.2的小伙伴就没办法用了呢。

幸运的是,通过SAS的提示发现是lineparm这个语句9.2不识别,通过series语句替代后,在9.2上成功运行。

相应版本的宏文件请见附件,下载后将文件名改为rocplot.sas或者修改导入宏步骤的路径名为现文件名即可。

相应的SAS官网的宏程序介绍我也以word文档的形式上传了附件,文末还有修改语句以适配9.2版本的过程,感兴趣的朋友可以阅读。
Marco.rar
大小:(17.71 KB)

 马上下载

本附件包括:

  • rocplot (for version 9.2).sas
  • rocplot (for version 9.3 or above).sas


希望这个宏程序的分享能够帮助到你,让你在使用SAS的过程中能更高效,如果你有什么好的宏程序也可以分享出来,大家互相学习:P

P.S.
大家在SAS作图的时候应该有一个共同的感受就是SAS默认的图片像素很低,这是因为程序默认输出的分辨率较低造成的。

可以通过语句重新定义图片的像素,一般设置为300dpi就ok了。

该语句同样可以修改图片的尺寸,解决了小图文字不可读的问题。/height=2in 设置为2in正好可以在word中并排放两张图。

具体可以参见→https://blogs.sas.com/content/graphicallyspeaking/2012/03/22/high-quality-graphs/
复制代码


附件列表
ROCCurve1.png

原图尺寸 64.91 KB

SAS默认样式

SAS默认样式

ROCCurve5.png

原图尺寸 38.96 KB

默认样式

默认样式

Document for rocplot.docx

大小:36.3 KB

 马上下载

unrevised version

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2018-4-11 16:37:21
:)...

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-4-12 04:24:22
谢谢。虽然不懂。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-11-23 17:52:59
最后一段的x,x=x是用指标替换吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-11-23 18:10:15
Bugjay 发表于 2018-11-23 17:52
最后一段的x,x=x是用指标替换吗?
是的
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-11-27 15:11:30
跑通了,感谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群