How to interpret IAT scores in Inquisit


Author
Message
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
I think the sing-mismatch may be due to a mistake in the script's relevant expressions:

<expressions>
...
/ d1 = (expressions.A1m - expressions.B1m) / expressions.sd1
/ d2 = (expressions.A2m - expressions.B2m) / expressions.sd2
...
</expressions>

gets the order of terms in the difference wrong in calculating A-B, which reverses the sign . It should be

<expressions>
...
/ d1 = (expressions.B1m - expressions.A1m) / expressions.sd1
/ d2 = (expressions.B2m - expressions.A2m) / expressions.sd2
...
</expressions>

i.e., B-A. You'll want to check if that's the case in your script.

Kala
Kala
Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)
Group: Forum Members
Posts: 10, Visits: 22
I pasted my expressions script below. It looks like it calculated d1 and d2 correctly. Is it possible that one should interpret traditionally-calculated IAT D scores (as they are calculated within the Inquisit script) differently than BIAT D scores calculated via the SPSS syntax?

<expressions>
/ A1m = values.A1sum / values.A1n
/ A2m = values.A2sum / values.A2n
/ B1m = values.B1sum / values.B1n
/ B2m = values.B2sum / values.B2n
/ A1sd = sqrt((values.A1ss - (values.A1n* (expressions.A1m * expressions.A1m))) / (values.A1n - 1))
/ A2sd = sqrt((values.A2ss - (values.A2n* (expressions.A2m * expressions.A2m))) / (values.A2n - 1))
/ B1sd = sqrt((values.B1ss - (values.B1n* (expressions.B1m * expressions.B1m))) / (values.B1n - 1))
/ B2sd = sqrt((values.B2ss - (values.B2n* (expressions.B2m * expressions.B2m))) / (values.B2n - 1))
/ sd1 = sqrt((((values.A1n - 1) * (expressions.A1sd * expressions.A1sd) + (values.B1n - 1) * (expressions.B1sd * expressions.B1sd)) + ((values.A1n + values.B1n) * ((expressions.A1m - expressions.B1m) * (expressions.A1m - expressions.B1m)) / 4) ) / (values.A1n + values.B1n - 1) )
/ sd2 = sqrt((((values.A2n - 1) * (expressions.A2sd * expressions.A2sd) + (values.B2n - 1) * (expressions.B2sd * expressions.B2sd)) + ((values.A2n + values.B2n) * ((expressions.A2m - expressions.B2m) * (expressions.A2m - expressions.B2m)) / 4) ) / (values.A2n + values.B2n - 1) )
/ d1 = (expressions.B1m - expressions.A1m) / expressions.sd1
/ d2 = (expressions.B2m - expressions.A2m) / expressions.sd2
/ d = if ( values.extended ) { (d1+d2) / 2 } else { d1 }
/ currentblocknumber = max(expt.1.currentblocknumber, expt.2.currentblocknumber)
/ preferred = "unknown"
/ notpreferred = "unknown"
/ totalblockcount = if (values.extended) {expt.1.blockcount} else {expt.1.blockcount-2}
/ percentcorrect = (values.n_correct/ (values.a1n + values.a2n + values.b1n + values.b2n)) * 100
</expressions>
Kala
Kala
Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)Esteemed Member (2.3K reputation)
Group: Forum Members
Posts: 10, Visits: 22
Based on your last comment, I now wonder if the error is in the SPSS syntax file. Based on how you saidCOMPUTE DNumer = MA - MB. Inquisit should calculate the espressions, should "COMPUTE DNumer = MA - MB." in the SPSS syntax actually be "COMPUTE DNumer = MB - MA."?

****************************************************************************.
* These are the numerator components in millisecond units.
****************************************************************************.
IF(Test=1) MA1 = MA .
IF(Test=1) MB1 = MB .
IF(Test=2) MA2 = MA .
IF(Test=2) MB2 = MB .

IF(Test=1) SD1a = SD1 .
IF(Test=1) SD2a = SD2 .
IF(Test=2) SD1b = SD1 .
IF(Test=2) SD2b = SD2 .

IF(Test=1) NA1 = NA .
IF(Test=1) NB1 = NB .
IF(Test=2) NA2 = NA .
IF(Test=2) NB2 = NB .

COMPUTE DNumer = MA - MB.

****************************************************************************.
*Use SD based on all responses (StanDevX) as denominator for D .
****************************************************************************.
COMPUTE DDenom = SQRT( ( ((NA-1) * SD1**2 + (NB-1) * SD2**2)
                   + ((NA+NB) * ((MA-MB)**2) / 4) ) / (NA + NB - 1) ) .

IF (Test=1) D1 = DNumer / DDenom .
IF (Test=2) D2 = DNumer / DDenom .
IF (Test=1) N1 = NA+NB .
IF (Test=2) N2 = NA+NB .

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
> I pasted my expressions script below. It looks like it calculated d1 and d2 correctly.

Yes, that looks correct.

> Is it possible that one should interpret traditionally-calculated IAT D scores (as they are calculated within the Inquisit script)
> differently than BIAT D scores calculated via the SPSS syntax?

No. There is no difference. At least in theory / leaving aside the sign mismatch under discussion, the script performs the exact same calculations as the SPSS syntax.

It's perfectly possible that the wrong order of terms is in the SPSS syntax, not the script.


benmittman
benmittman
Associate Member (209 reputation)Associate Member (209 reputation)Associate Member (209 reputation)Associate Member (209 reputation)Associate Member (209 reputation)Associate Member (209 reputation)Associate Member (209 reputation)Associate Member (209 reputation)Associate Member (209 reputation)
Group: Forum Members
Posts: 1, Visits: 13
Hello,

I've been running the IAT and I've lost the summaries for most of my files -- is there any way to re-generate the summaries from the full data files? This would just save me a lot of time from having to recalculate the values shown on the summaries.

Thank you,

Ben M.
Hamilton College
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
If you used any of the templates available from the millisecond.com library, the D-scores are also recorded to the raw data files. The last line for a given participant gives you the final scores.

Of course, you can also calculate D from the raw latency data. You can use the SPSS syntax files available from the library's IAT page as a starting point.

mparekh
mparekh
Partner Member (839 reputation)Partner Member (839 reputation)Partner Member (839 reputation)Partner Member (839 reputation)Partner Member (839 reputation)Partner Member (839 reputation)Partner Member (839 reputation)Partner Member (839 reputation)Partner Member (839 reputation)
Group: Forum Members
Posts: 6, Visits: 21

Hello, I have received conflicting reviews on cutoff scores for the IAT. In one article it is said that any value above +0.65 or below -0.65 indicates a preference one way or another. Some other areas say that any value positive or negative indicates a preference whereas 0 does not. In my data the value I receive (mean value of 150 participants) was 0.46, standard deviation of 0.31. Does this indicate a preference? I would be happy to talk more if you should have the time.

Thank you for your help,



Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
D-scores are sometimes classified as indicating a "slight", "moderate" or "strong" association. The respective cutoff values are chosen to roughly correspond to typical effect size characterizations.

See https://implicit.harvard.edu/implicit/demo/background/raceinfo.html for an example.

An absolute value >= .65 would indicate a "strong" association, it is not that case that any value below that would indicate *no association*. Instead, absolute values >= .35 are usually taken to indicate a "moderate" association, while >= .15 would indicate a "slight" effect.
Anything between 0 and .15 would be taken as showing no association.

EmilieN
EmilieN
Partner Member (648 reputation)Partner Member (648 reputation)Partner Member (648 reputation)Partner Member (648 reputation)Partner Member (648 reputation)Partner Member (648 reputation)Partner Member (648 reputation)Partner Member (648 reputation)Partner Member (648 reputation)
Group: Forum Members
Posts: 3, Visits: 9
Hi Dave,
I hope it's not too late for this reply.
I have a few questions concerning 'expressions.d'. You wrote that the only difference between the calculation of Inquisit and the 'improved scoring algorithm' would be that subjects below 300ms on 10+% of the trials are not automatically discarded. I'm writing my bachelor thesis at the Moment and I used only the automatic generated d-scores for my calculations. now I'm asking myself if it's still ok to write, that the computation of IAT scores is based on the scoring algorithm provided by Greenwald et al. (2003) and how I could establish the fact that subjects below 300ms on 10+% of the trials were not automatically discarded? Even though I have the raw data collected it would cost me months to transfer them into a SPSS data set and compute them with the provided syntax for several reasons. So is there a convincing explanation which i could use for my argumentation why I haven't discarded subjects below 300ms? Next time i would handle it different because now I know much more about IATs and the functions of Inquisit. But for this time it would be so helpful if I could to it that way. Thanks in advance for helping me out!

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
The scores are calculated according to the improved scoring algorithm.

Whether a given subject has latencies < 300 ms in 10% or more of all trials changes nothing about the calculation of D.

Instead, the recommendation is that such subjects' data should be *discarded* entirely from any analysis. I.e., if you have a participant X who responded < 300 ms in more than 10% of all trials, you simply throw her/his entire data set away.

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search