Millisecond Forums

SC-IAT script for Inquisit 3?

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

By AC - 6/27/2015

Hello,

I am hoping someone can point me in thedirection of a script for a SC-IAT for Inquisit 3. I can see SC-IAT script forInquisit 4, but unfortunately I don’t have access to Inquisit 4 and I can’t getthe Inquisit 4 script to run on Inquisit 3.
Thanks in advance,
Annette

By Dave - 6/28/2015

AFAIK, there isn't one. Taking the Inquisit 4 SC-IAT script as the basis and making it compatible with Inquisit 3 is the way to go. You need to strip out the features specific to Inquisit 4 (e.g., there is no <summarydata> element in Inquisit 3; there is no <list> element, use <counter> instead) and make some other minor syntax modifications (there are no increment or decrement operators in Inquisit 3; replace expressions like 'values.myvalue += 1' with the Inquisit 3 equivalent 'values.myvalue = values.myvalue +1').

You also need to consolidate multiple <expressions> and <values> elements into a single one each respectively; see https://www.millisecond.com/forums/FindPost15588.aspx
By AC - 6/28/2015

Thank you so much, Dave. Hhmm, I have a lot to learn... this should be fun
By Dave - 6/28/2015

If you get stuck, post to this thread. You can attach files (e.g. the current version of the script you're working on) by clicking +Insert -> Add File.

Don't worry, though. It's not that hard, the changes you have to make are relatively minor.
By AC - 7/16/2015

Hi Dave,

After a few hiccups I have organised myexplicit measures, and it was more straightforward than I thought. I now haveto address the implicit measures. I will run a series of SC-IATs (inquisit 4with version 4 specific syntax removed to run on version 3), so I looked for,but didn’t see any <summarydata> or <list>, but I did addressvalues and expressions.

I compiled all of the values into onesection, which was fine. I didn’t seem to have any increment expressionshowever there was:

/ ontrialend =[if(block.incompatibletest.latency  <=10000) values.n_correct += block.incompatibletest.correct]

Which it was having an issue with so I changed to:

/ ontrialend =[if(block.incompatibletest.latency  <=10000) values.n_correct = values.n_correct + block.incompatibletest.correct]

But it is not running on version 3. I have attached the script in case it helps (it is just an edited version of the standard Ia SC-IAT at the moment)

 

2. I will have 6 SC-IATs and I would liketo present them in a random manner before presenting explicitmeasures . What is the best way to do this? Using Batch?

 

3. Also, I don’t want to present individualfeedback to participants regarding their SC-IAT performance until they havecompleted all measures, as I don’t want it to influence the following implicitor explicit measures. It would be great if it could be presented at the endafter finishing all implicit and explicit measures though, is that possible toset up as part of the Batch?

Thanks in advance

By Dave - 7/16/2015

Re. #1:

<defaults>
/ fontstyle = ("Arial", 3.5%)
/ screencolor = (0,0,0)
/ txbgcolor = (0,0,0)
/ txcolor = (255, 255, 255)
/ minimumversion = "4.0.0.0"
</defaults>
 
is what you ought to change. Also, there *is* a <summarydata> element in your script:

<summarydata >
/file = "SC_IAT_summary.iqdat"
/columns = [script.startdate, script.starttime, script.subjectid, script.groupid, script.elapsedtime, values.completed,
            expressions.m1, expressions.sd1, expressions.m2, expressions.sd2,
            expressions.d, expressions.latdiff, expressions.percentcorrect]
</summarydata>

This won't work under Inquisit 3, because the <summarydata> element does not exist in Inquisit 3 syntax.

You also need to change the /groupassignment in your <expt>s:
<expt>
/subjects = (1 of 2)
/groupassignment = groupnumber
...
</expt>

Inquisit 3 has no group number / id, only subject number / id. For the same reason, you also need to remove the group column from the <data> element:

<data>
/file = "SC_IAT_rawdata.iqdat"
/separatefiles = true
/ columns = [date, time, group, subject, blockcode, blocknum, trialcode, trialnum,
            response, correct, latency, stimulusnumber, stimulusitem,
            expressions.d, expressions.latdiff, expressions.percentcorrect]
</data>

Re. #2: <batch> is the easiest option if you want to keep things in separate scripts. You can find many examples for that in the forum. The other option is to merge all the IATs into a single file; you'll find that covered in the "How to Combine Multiple Scripts" topic in the documentation.

Re. #3: You can suppress the summary feedback in the script by setting

<values>
/showsummaryfeedback = true
...
</values>

to false as detailed in the comments. It is not possible to present feedback for multiple IATs when you run separate scripts via <batch>. That would only be possible when combining all the IATs into a single script (the 2nd option mentioned under #2 above).