Signal Detection Software for Receiver Operator Characteristics (ROC):

This program is designed to help the average clinician/researcher with a PC to evaluate clinical databases and discover the characteristics of patients, including genetics. that best predict a binary outcome. It is well described in the read_me files in the downloadable zip files.

ROC5.07 Revised Version  This revised and updated version is available in 32 and 64 bit versions compiled.  As in the past it requires use of a batch file to get all parameters correct.  Memory limitations have been removed and allocated to match the numbers of variables and cases entered... watch out in W32 applications since you only will get at most a couple GB.  Latest W32 is 5.06 and will no longer be supported specifically... it is just the W64 code compiled for W32....


Please note that some of the results with 5.XX may vary from those in 4.22 and 4.19.  None of the computations have changed in the source code.  Variations may be due to changes in the compiler that required us to change the precision of the floating point numbers and moving to 64-bit and this may slightly change which variable wins out in the competition.  A larger factor is that results will vary by selection of number of cases considered acceptable in each cell as well as the p value to progress and relative sensitivity and specificity.  Many of these values were set by default in the code according to traditions.  To make all the options explicit, they are now all part of a REQUIRED set of parameters in the command line or batch files.  We have several examples included in the zip folder.  Check the read_me for an explanation of the various options.  The big options are the p value to progress ( .05 .01 or .001) and the acceptable number of cases in cells (10 15 20 25 or 30). 


NOTE WELL:  The missing value code is ONLY -9999 whereas in version 4.XX it was -9999.99.


This is the Read_Me.


Here is an excellent slide show on the subject by Professor Ruth O'Hara as well as an illustrative article.

There is one more article that uses ROC for cognitive data exploration followed by confirmation.  The articles splits a sample for the exploratory work then follows up with a confirmatory analysis. 

There is another article that uses ROC for TB test level exploration of cut-offs followed by confirmation. 

This is a listing of publications that use the ROC. 


Help? E-mail us (Art Noda or myself). Requests from the programmer are more cheerfully received after a donation to the programmers favorite charity (California Trout- ask how to do this: short answer is buy this book). In case you are wondering how we actually do this programming, just a historical note on how the programmer was trained. After Sputnick (1958) the NSF started training High School kids in programming through various summer programs. The programmer spent a summer at Stevens Institute of Technology in Hoboken New Jersey where he learned assembler language and wrote a compiler. In those days the computer in use was an IBM 1620 with 32K of CORE (Little donutes with three wires in them) we also had a Univax machinewith tubes. So, when we wonder if we spend enough on training in science in the Federal budget and if it is worth it, at least I got 43 years of programming out of this training.


The Version History is:

/* Revision 4.0 April 10 2002 edited final EOF on data.txt entry problems */
/* Revision 4.1 July 3 2002 fixed rounding problems */
/* Revision 4.11 July 12 2002 fixed more truncating problems */
/* Revision 4.12 July 31 2002 fixed more truncating problems */
/* Revision 4.13 Oct. 6 2003 capacity increase to deal with HSR&D data 50000x200*/
/* Revision 4.14 Oct. 10 2003 print error repaired; Dx for stdev errors; capacity to 50000x1000*/
/* Revision 4.15 Nov. 10 2003 fixed errors in non 50/50 sensitivity/specificity kappa*/
/* Revision 4.16 Dec. 24 2003 make sorting and printing intermediate values optional to speed processing*/
/* Revision 4.17 Dec. 25 2003 supress output of all diagrams with marginal totals < 10*/
/* Revision 4.18 Dec. 28 2003 supress sort of all kappa*/
/* Revision 4.19 Jul. 13 2004 fix error in SD of floating point variables*/
/* Revision 4.20 Jan. 7 2006 Allow 01 gradation of settings for sens/spec*/
/* Revision 4.21 Apr. 7 2006 Allow .05 and .01 criteria*/
/* Revision 4.22 May. 25 2007 Allows 120k cases and 1k variables*/
/* Revision 4.30 July 5 2007 Allows flexible number cases and variables*/
/* Revision 4.32 July 6 2007 Allows flexible number cases and variables memory usuage reduced*/
/* Revision 5.00 Sept 26 2007 Option for 64 bit computing of large datasets plus all the rest of upgrades from 4.19 on*/
/* Revision 5.01 Jun 13 2014 5.00 recompiled for Windows 7 and more modern Windows OSs*/
/* Revision 5.02 Jun 17 2014 5.00 command line options for output diagrams to be truncated to reduce ambiguities.... W64 and W32 equated to same codebase*/

/* Revision 5.03 Sep 30 2014 Marginal cut points all set to =< value entered output format fixed .... W64 and W32 equated to same codebase*/
/* Revision 5.04 Jul 1 2015 Minor fixes following UCSF suggestions; Missing values must only be -9999 not -9999.99 .... W64 and W32 equated to same codebase*/
/* Revision 5.06 Jul 6 2015 Attempt to get Sens and Spec printed on summary page .... W64 and W32 equated to same codebase*/

/* Revision 5.07 Jul 13 2015 Best Variable format changed to f8.3d (3 digits significance) throughout printout .... W64 and W32 equated to same codebase*/
/* Revision 5.07 Jul 13 2015 Variable Name length changed to 24 characters throughout printout .... W64 and W32 equated to same codebase*/

Return to the ACRC page or the ACRC Director's home page.