Millisecond Forums

Dividing subjects into 2 separate sets of experiments

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

By Adrien - 3/31/2016

Hey,

So I'm trying to create a study that involves 2 sets of experiments where the participants are divided into separate groups. In the first one (experiment 2) there are 5 groups and I was able to set that up no problem. The issue comes up with experiment 3. In that one, the participants who go through experiment 2B need to do experiment 3B, whereas everyone else does experiment 3A (which I've copied onto 3C-3E to fit the /subjects line). But when I try coding it for that it just shuts down after experiment 2 is over, regardless of which group I try running, without giving me any error codes. I'm pretty sure it's an issue with the /subjects line, because if I take that out of experiments 3A and 3B it just runs both one after the other for all groups. Can someone help me figure this out? I've included the code if that makes things any easier. 

<expt 2A>
/subjects = (1 of 5)
/blocks = [1 = targetblock]
/postinstructions = (intro3)
/groupassignment = groupnumber
</expt>

<expt 2B>
/subjects = (2 of 5)
/blocks = [1 = targetblock2]
/postinstructions = (intro3)
/groupassignment = groupnumber
</expt>

<expt 2C>
/subjects = (3 of 5)
/blocks = [1 = targetblock3]
/postinstructions = (intro3)
/groupassignment = groupnumber
</expt>

<expt 2D>
/subjects = (4 of 5)
/blocks = [1 = targetblock4]
/postinstructions = (intro3)
/groupassignment = groupnumber
</expt>

<expt 2E>
/subjects = (5 of 5)
/blocks = [1 = targetblock5]
/postinstructions = (intro3)
/groupassignment = groupnumber
</expt>

<expt 3A>
/subjects = (1 of 5)
/preinstructions = (intro4)
/blocks = [1= EmotionSurvey]
/postinstructions = (end)
</expt>

<expt 3B>
/subjects = (3 of 5)
/preinstructions = (intro4)
/blocks = [1= EmotionSurvey]
/postinstructions = (end)
</expt>

<expt 3C>
/subjects = (4 of 5)
/preinstructions = (intro4)
/blocks = [1= EmotionSurvey]
/postinstructions = (end)
</expt>

<expt 3D>
/subjects = (5 of 5)
/preinstructions = (intro4)
/blocks = [1= EmotionSurvey]
/postinstructions = (end)
</expt>

<expt 3E>
/subjects = (2 of 5)
/preinstructions = (intro4)
/blocks = [1= EmotionSurvey2]
/postinstructions = (end)
</expt>
By Dave - 3/31/2016

<expt 2B>
/subjects = (2 of 5)
/blocks = [1 = targetblock2]
/postinstructions = (intro3)
/groupassignment = groupnumber
</expt>

#1: You assign your to "2"-series of <expt>s based on *groupnumber*. You do not do so with your "3"-series of <expt>s.

<expt 3B>
/subjects = (3 of 5)
/preinstructions = (intro4)
/blocks = [1= EmotionSurvey]
/postinstructions = (end)
</expt>

If you don't explicitly specify /groupassignment, Inquisit will use /groupassignment = subjectnumber by default. Specify /groupassignment = groupnumber in your "3" <expt> elements just like in your "2" <expt>s.

#2: > participants who go through experiment 2B need to do experiment 3B

Is not what the code suggests. Had you specified /groupassignment, the <expt> corresponding to 2B would be 3E:

<expt 3E>
/subjects = (2 of 5)
/preinstructions = (intro4)
/blocks = [1= EmotionSurvey2]
/postinstructions = (end)
</expt>                               

Basic, working example:

<expt 1A>
/ blocks = [1=myblock]
/ subjects = (1 of 2)
/ groupassignment = groupnumber
</expt>

<expt 1B>
/ blocks = [1=myblock]
/ subjects = (2 of 2)
/ groupassignment = groupnumber
</expt>

<expt 2A>
/ blocks = [1=myblock]
/ subjects = (1 of 2)
/ groupassignment = groupnumber
</expt>

<expt 2B>
/ blocks = [1=myblock]
/ subjects = (2 of 2)
/ groupassignment = groupnumber
</expt>

<block myblock>
/ trials = [1=mytrial]
</block>

<trial mytrial>
/ stimulusframes = [1=mytext]
/ validresponse = (57)
</trial>

<text mytext>
/ items = ("This is expt <%script.currentexpt%>")
</text>