turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

Find a Community

- Home
- /
- SAS Programming
- /
- SAS/GRAPH and ODS Graphics
- /
- Automate creation of ROC curves from contingency t...

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

01-01-2014 10:57 PM

Dear Community,

*At the suggestion of Cynthia@sas, I am re-posting this question in this group. (I originally posted it in SAS Macro Facility, Data Step and SAS Language Elements.)*

I have a macro that successfully creates 2x2 contingency tables, one for each value of a variable X. The contingency tables are created from PROC FREQ.

Now, I would like to

1) calculate the specificity and sensitivity from each table

2) plot all pairs of sensitivity and 1-specificity to create an ROC curve (sensitivity vs. 1-specificity) for all values of X

Is there a way to automate this in SAS? I can't find a way to do so via searching on Google or SAS documentation.

I envision the successful macro being able to

a) extract the counts from each cell in each contingency table

b) calculate sensitivity and 1-specificity for each contingency table

c) plot sensitivity vs. 1-specificity

but I can't figure out how to do this. (I'm sure that DO-loops and arrays are needed somehow.)

Thus, right now, I am typing the counts by hand into Microsoft Excel and plotting the ROC curve there. This worked initially when I only had to create 5 ROC curves, but I now need to produce 20, and I wish to automate this process.

Any help that you can provide would be much appreciated!

Thanks,

Eric

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to EricCai

01-03-2014 10:40 AM

Eric,

Go to Lex Jansen's wonderful website - www.lexjansen.com and search for the SUGI paper "Constructing ROC Curves with the SAS System" by Andrew Stead. The paper contains a nice macro for calculating and plotting ROC curves.

Renee

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to sunnyrj

05-03-2014 10:05 PM

Hi Renee,

Thanks for the suggestion, and sorry for the late reply. After much trying in SAS, I realized that it would be easier to plot the ROC curves in R, so I proceeded to do that successfully and smoothly. There were many curves that I needed to draw, and I needed to do a lot of annotation and colour-coding, so I'm glad that I did it in R.

Thanks again,

Eric