Millisecond Forums

Understanding the difference between the equations cohen's d and d_biep

https://forums.millisecond.com/Topic18074.aspx

By Julian - 1/12/2016

Hello all,

I have been reviewing the IAT SPSS
. SPSS command syntax for processing the IAT data generated by the IAT templates - See more at: http://www.millisecond.com/download/library/IAT/#sthash.AtTohJL9.dpuf
. SPSS command syntax for processing the IAT data generated by the IAT templates - See more at: http://www.millisecond.com/download/library/IAT/#sthash.AtTohJL9.dpuf
 command syntax for processing IAT data which I downloaded here ( http://www.millisecond.com/download/library/IAT/ ). I have also been reviewing the Greenwald, Nosek, and Banaji (2003) article which outlines the syntax. Greenwald, Nosek, and Banaji (2003) state that the only difference between Cohen's d and D is that the standard deviation in the denominator of D is calculated from the scores in both conditions, ignoring condition membership. The denominator for D appears in the command as following

D_asis_denom = SQRT( ( ((N1-1) * SD1**2 + (N2-1) * SD2**2) + ((N1+N2) * ((M1-M2)**2) / 4) ) / (N1 + N2 - 1) )

The denominator for Cohen's d (pooled within treatment standard deviation), in the same format, i believe is

SQRT( ((N1-1) * SD1**2 + (N2-1) * SD2**2)  / (N1 + N2 - 2) )

I do not understand how the differences between these two denominators can be simply explained by D ignoring condition membership, while d does not.
Does including the addition of ((N1+N2) * ((M1-M2)**2) / 4) and subtracting by 1 instead of 2 somehow account for ignoring condition membership? I have scoured the forums and other articles by Greenwald, Nosek, and Banaji for an explanation, but can not find one.


Thanks in advance for the help! I am so grateful for all the information the forums have already provided.


Greenwald, A. G., Nosek, B. A., & Banaji, M. R. (2003). - See more at: http://www.millisecond.com/download/library/IAT/#sthash.AtTohJL9.dpuf
Greenwald, A. G., Nosek, B. A., & Banaji, M. R. (2003). - See more at: http://www.millisecond.com/download/library/IAT/#sthash.AtTohJL9.dpuf
. SPSS command syntax for processing the IAT data generated by the IAT templates - See more at: http://www.millisecond.com/download/library/IAT/#sthash.AtTohJL9.dpuf
. SPSS command syntax for processing the IAT data generated by the IAT templates - See more at: http://www.millisecond.com/download/library/IAT/#sthash.AtTohJL9.dpuf
. SPSS command syntax for processing the IAT data generated by the IAT templates - See more at: http://www.millisecond.com/download/library/IAT/#sthash.AtTohJL9.dpuf(http://www.millisecond.com/download/library/IAT/
By Dave - 1/12/2016

I'm afraid I am not sure what exactly it is you don't understand. Perhaps an example that's easy enough to calculate by hand will illustrate.

Suppose you have the following raw data:

5,4 are the raw values making up SET1. Thus N1 = 2, M1 = 4.5 and SD1 = 0.7071.

3,2,4,7 are the raw values making up SET2. Thus N2 = 4, M2 = 4 and SD2 = 2.1602.

Now calculate the D-score nominator as well as Cohen's pooled SD:
D_asis_denom = 1.7248
Cohen_pooled = 1.9039

Also calculate the SD across all six raw data points, i.e. SDALL = sd(5,4,3,2,4,7). The result is
SDALL = 1.7224.

You'll notice that SDALL is -- disregarding rounding errors, etc. -- identical to D_asis_denom, but noticeably different from the pooled SD for Cohen's d.

In SPSS syntax:

COMPUTE N1 = 2.
COMPUTE M1 = mean(5,4).
COMPUTE SD1=sd(5,4).
COMPUTE N2 = 4.
COMPUTE M2 = mean(3,2,4,7).
COMPUTE SD2=sd(3,2,4,7).
COMPUTE SDALL=sd(5,4,3,2,4,7).
EXECUTE.

COMPUTE D_asis_denom = SQRT( ( ((N1-1) * SD1**2 + (N2-1) * SD2**2) + ((N1+N2) * ((M1-M2)**2) / 4) ) / (N1 + N2 - 1) ).
COMPUTE Cohen_pooled = SQRT( ((N1-1) * SD1**2 + (N2-1) * SD2**2)  / (N1 + N2 - 2) ) .
EXECUTE.
By Julian - 1/14/2016

Hi Dave,
Thanks for your response. That example did help explain how the differences in the calulcations in the D score that are not in Cohen's d work to ingore condition membership. If the standard deviation of all caluclation is virtually identical to the D score calculaton, then why bother with the elaborate D score calculation?
Thank you!
By Dave - 1/14/2016

In the syntax, the denominator calculation happens at a stage where you're not operating on the full-raw data set anymore but are already working with aggregate values derived from a specific subset of the raw data.