Dr. Kang Lee's Development Lab

Signal Detection Theory

Click here for ready-made Excel Work Sheet for SDT calculations.

Different experimental designs may require different formulas for calculating sensitivity and response bias measures. See Macmillan & Creelman (1991) for details.

The following is an example of how to use Excel to compute the measures with data collected using a yes-no paradigm.

For d prime:
Put your hit and false alarm rate data into an Excel spreadsheet. Lets say the hit rates are in column A and the false alarm rates are in column B. In cell C1, define the function


That's basically saying z(Hit) minus z(FA), and that's what d' is equal to. Once you've defined it for one particular pair of hit and false alarm rates (i.e., the ones in row 1), you can just copy and paste down column C and it will automatically do it for the remaining ones.

For beta (natural log):
Go to cell D1 and use this formula:


where C1 refers to the d' value that is computed in that cell. Then copy and paste down column D so it will do all the rest of the beta calculations.

For beta (ratio):
Go to cell E1 and use this formula:

= exp (D1)

For criterion c:
Go to Column F, use this formula

=-.5*(NORMSINV(A1) and NORMSINV(B1))

For normalized c’:
Use this formula

=-.5*(NORMSINV(A1) and NORMSINV(B1))/d’

How to deal with hit rate of 1 and false alarm rate of 0:
If you have any hit rates of 1.0 or false alarm rates of 0, you need to do a standard correction on those first. There is some controversy about the best way to correct hit and false alarm rates, but the "standard" method is the one described below:

Let's say that N is the maximum number of false alarms (i.e., it's the number of lures). Not counting zero, the smallest false alarm rate you have is 1/N. If you have a measured false alarm rate of 0, you know that the true false alarm rate falls somewhere between 0 and 1/N, so the usual strategy is to just use 1/(2N) instead of zero (which is the same as saying that you observed half a false alarm). So, if N = 40 and you have a false alarm rate of 0, use 1/80 (.0125) instead). The same reasoning applies to a hit rate of 1.0. Instead of using 1.0, use 1 - 1/(2N), where N is now the number of targets.

​- John Wixted & Kang Lee