Displaying multiple images per trial randomly selected from different categories


Displaying multiple images per trial randomly selected from different...
Author
Message
shane
shane
Expert (1.1K reputation)Expert (1.1K reputation)Expert (1.1K reputation)Expert (1.1K reputation)Expert (1.1K reputation)Expert (1.1K reputation)Expert (1.1K reputation)Expert (1.1K reputation)Expert (1.1K reputation)
Group: Forum Members
Posts: 20, Visits: 81
Hi everyone,  I appreciate your assistance in advance. I'm working on the script for a 3 (looks: attractive, average, unattractive) x 3 (line type: flippant, direct, innocuous) repeated measures design. On each trial, we need to display three photos at one time (horizontally), one randomly selected from each level of the IV (one attractive, average, and unattractive). On each trial, there is one question from one of three levels of the other IV (line type), randomly selected. Ps are to select which person they think said the line.  The complication arises, I think, in that we do not have sample stimuli (images) that are a multiple of the number of individual trials.  We have two exemplars of each looks level (so 2 "attractive" men, two average and two unattractive.  We also have two exemplars of each line type (so two flippant lines, two direct ones, and two innocuous ones).  So, what should happen is that each face appears three times across the 6 trials of the experiment.  But, I need to constrain the randomization such that (a) only 1 exemplar from each category appears on a given trial (that is, the three stimuli displayed on each trial will always be one of each looks type) (b) That no picture is repeated within a line type.  Thus, for example, for direct line 1 and direct line 2, there should not be a repetition of any of the six images.  Because I want the line type randomized, I'd rather not block by line type unless I have to do so. 
Regardless, I cannot seem to figure out why with the script below, only two images are appearing at a time, rather than three.  I suspect it has something to do with the hposition  and / or list script, but I'm frankly not clear from Inquisit's manual instructions precisely what that code is doing.  In any event, I appreciate any advice!  All best. 

<item ATfaces>
/ 1 = "01.jpg"
/ 2 = "02.jpg"
</item>

<item AGfaces>
/ 1 = "03.jpg"
/ 2 = "04.jpg"
</item>

<item UGfaces>
/ 1 = "05.jpg"
/ 2 = "06.jpg"
</item>


<picture ATfaces>
/ items = ATfaces
/ size = (20%, 20%)
/ resetinterval = 0
/ hposition = list.randomhpos.nextvalue
/ vposition = 40%
</picture>

<picture AGfaces>
/ items = AGfaces
/ size = (20%, 20%)
/ resetinterval = 0
/ hposition = list.randomhpos.nextvalue
/ vposition = 40%
</picture>

<picture UGfaces>
/ items = UGfaces
/ size = (20%, 20%)
/ resetinterval = 0
/ hposition = list.randomhpos.nextvalue
/ vposition = 40%
</picture>

<list randomhpos>
/ items = (35%, 65%)
/ selectionrate = always
</list>

<trial flip1>
/ stimulusframes = [1=flip1, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial flip2>
/ stimulusframes = [1=flip2, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial direct1>
/ stimulusframes = [1=direct1, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial direct2>
/ stimulusframes = [1=direct2, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial innoc1>
/ stimulusframes = [1=innoc1, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial innoc2>
/ stimulusframes = [1=innoc2, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<text Flip1>
/ items = ("Are you a parking ticket? Because you got fine written all over you.")
/ position = (50, 70)
/ valign = center
</text>

<text Flip2>
/ items = ("Know what's on the menu? Me-n-u.")
/ position = (50, 70)
/ valign = center
</text>

<text Direct1>
/ items = ("I feel a little embarrassed about this, but I saw you across the room. What's your name?")
/ position = (50, 70)
/ valign = center
</text>

<text Direct2>
/ items = ("Hi. I knew if I didn't meet you, I would beat myself up all night. How are you doing?")
/ position = (50, 70)
/ valign = center
</text>


<text Innoc1>
/ items = ("I think I've seen you before. Have we taken a class together?")
/ position = (50, 70)
/ valign = center
</text>

<text Innoc2>
/ items = ("Hey, what do you think about the band?")
/ position = (50, 70)
/ valign = center
</text>

<block instructions>
/ preinstructions = (introinstr1, consent, introinstr2)
</block>

<block lines>
/ trials = [1-6=noreplace(flip1, flip2, direct1, direct2, innoc1, innoc2)]
</block>

<dropdown gender>
/ caption = "Gender"
/ options = ("female", "male", "neither", "prefer to self-describe my gender")
/ optionvalues = ("1", "2", "3", "4")
</dropdown>

<textbox age>
/ caption = "Age"
/ mask = positiveinteger
/ range = (18, 85)
</textbox>

<dropdown relationship>
/ caption = "Are you currently in a romantic or dating relationship?"
/ options = ("Yes", "No")
/ optionvalues = ("1", "2")
</dropdown>

<radiobuttons race>
/ caption = "Race"
/ options = ("American Indian/Alaska Native", "East Asian", "South Asian", "Native Hawaian or other Pacific Islander", "Black or African American", "White",
"More than one race")
/ other = "Other"
/ optionvalues = ("0," "1", "2", "3", "4", "5", "6", "7")
</radiobuttons>

<radiobuttons religion>
/ caption = "Which comes closest to your religion?"
/ options = ("None", "Agnostic", "Atheist", "Buddhist", "Christian-Catholic", "Christian-Protestant", "Hindu", "Jewish", "Muslim/Islamic", "Other")
/ optionvalues = ("0," "1", "2", "3", "4", "5", "6", "7", "8", "9")
</radiobuttons>

<slider politics>
/ caption = "Political Identity"
/ labels = ("strongly liberal", "moderately liberal", "slightly liberal", "slightly conservative", "moderately conservative", "strongly conservative")
/ range = (1, 6)
/ slidersize = (60%, 5%)
/ showtooltips = false
</slider>

<surveypage demographics1>
/ caption = "Please answer the following demographic questions"
/ fontstyle = ("Verdana", -16, true, false, false, false, 5, 0)
/ questions = [1=gender; 2=age; 3=relationship; 4=race; 5=religion; 6=politics]
</surveypage>

<survey demographics>
/ pages = [1=demographics1]
/ responsefontstyle = ("Verdana", -12, false, false, false, false, 5, 0)
/ itemfontstyle = ("Verdana", -13, false, false, false, false, 5, 0)
/ itemspacing = 2%
/ showpagenumbers = false
</survey>

<block demoinstr>
/ screencolor = (255, 255, 255)
/ preinstructions = (demo)
</block>

<page demo>
Please answer the following demographic questions. All of your answers are completely confidential and anonymous.^^
When you are ready, press the spacebar to proceed.
</page>

<block fin>
/ screencolor = (255, 255, 255)
/ preinstructions = (end)
</block>

<expt>
/ blocks = [1=instructions; 2=lines; 3=demoinstr; 4=demographics]
/ postinstructions = (end)
</expt>


Dave
Dave
Supreme Being (817K reputation)Supreme Being (817K reputation)Supreme Being (817K reputation)Supreme Being (817K reputation)Supreme Being (817K reputation)Supreme Being (817K reputation)Supreme Being (817K reputation)Supreme Being (817K reputation)Supreme Being (817K reputation)
Group: Administrators
Posts: 10K, Visits: 56K
shane - 3/29/2020
Hi everyone,  I appreciate your assistance in advance. I'm working on the script for a 3 (looks: attractive, average, unattractive) x 3 (line type: flippant, direct, innocuous) repeated measures design. On each trial, we need to display three photos at one time (horizontally), one randomly selected from each level of the IV (one attractive, average, and unattractive). On each trial, there is one question from one of three levels of the other IV (line type), randomly selected. Ps are to select which person they think said the line.  The complication arises, I think, in that we do not have sample stimuli (images) that are a multiple of the number of individual trials.  We have two exemplars of each looks level (so 2 "attractive" men, two average and two unattractive.  We also have two exemplars of each line type (so two flippant lines, two direct ones, and two innocuous ones).  So, what should happen is that each face appears three times across the 6 trials of the experiment.  But, I need to constrain the randomization such that (a) only 1 exemplar from each category appears on a given trial (that is, the three stimuli displayed on each trial will always be one of each looks type) (b) That no picture is repeated within a line type.  Thus, for example, for direct line 1 and direct line 2, there should not be a repetition of any of the six images.  Because I want the line type randomized, I'd rather not block by line type unless I have to do so. 
Regardless, I cannot seem to figure out why with the script below, only two images are appearing at a time, rather than three.  I suspect it has something to do with the hposition  and / or list script, but I'm frankly not clear from Inquisit's manual instructions precisely what that code is doing.  In any event, I appreciate any advice!  All best. 

<item ATfaces>
/ 1 = "01.jpg"
/ 2 = "02.jpg"
</item>

<item AGfaces>
/ 1 = "03.jpg"
/ 2 = "04.jpg"
</item>

<item UGfaces>
/ 1 = "05.jpg"
/ 2 = "06.jpg"
</item>


<picture ATfaces>
/ items = ATfaces
/ size = (20%, 20%)
/ resetinterval = 0
/ hposition = list.randomhpos.nextvalue
/ vposition = 40%
</picture>

<picture AGfaces>
/ items = AGfaces
/ size = (20%, 20%)
/ resetinterval = 0
/ hposition = list.randomhpos.nextvalue
/ vposition = 40%
</picture>

<picture UGfaces>
/ items = UGfaces
/ size = (20%, 20%)
/ resetinterval = 0
/ hposition = list.randomhpos.nextvalue
/ vposition = 40%
</picture>

<list randomhpos>
/ items = (35%, 65%)
/ selectionrate = always
</list>

<trial flip1>
/ stimulusframes = [1=flip1, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial flip2>
/ stimulusframes = [1=flip2, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial direct1>
/ stimulusframes = [1=direct1, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial direct2>
/ stimulusframes = [1=direct2, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial innoc1>
/ stimulusframes = [1=innoc1, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<trial innoc2>
/ stimulusframes = [1=innoc2, ATfaces, AGfaces, UGfaces]
/ inputdevice = mouse
/ validresponse = (ATfaces, AGfaces, UGfaces)
/ recorddata = true
</trial>

<text Flip1>
/ items = ("Are you a parking ticket? Because you got fine written all over you.")
/ position = (50, 70)
/ valign = center
</text>

<text Flip2>
/ items = ("Know what's on the menu? Me-n-u.")
/ position = (50, 70)
/ valign = center
</text>

<text Direct1>
/ items = ("I feel a little embarrassed about this, but I saw you across the room. What's your name?")
/ position = (50, 70)
/ valign = center
</text>

<text Direct2>
/ items = ("Hi. I knew if I didn't meet you, I would beat myself up all night. How are you doing?")
/ position = (50, 70)
/ valign = center
</text>


<text Innoc1>
/ items = ("I think I've seen you before. Have we taken a class together?")
/ position = (50, 70)
/ valign = center
</text>

<text Innoc2>
/ items = ("Hey, what do you think about the band?")
/ position = (50, 70)
/ valign = center
</text>

<block instructions>
/ preinstructions = (introinstr1, consent, introinstr2)
</block>

<block lines>
/ trials = [1-6=noreplace(flip1, flip2, direct1, direct2, innoc1, innoc2)]
</block>

<dropdown gender>
/ caption = "Gender"
/ options = ("female", "male", "neither", "prefer to self-describe my gender")
/ optionvalues = ("1", "2", "3", "4")
</dropdown>

<textbox age>
/ caption = "Age"
/ mask = positiveinteger
/ range = (18, 85)
</textbox>

<dropdown relationship>
/ caption = "Are you currently in a romantic or dating relationship?"
/ options = ("Yes", "No")
/ optionvalues = ("1", "2")
</dropdown>

<radiobuttons race>
/ caption = "Race"
/ options = ("American Indian/Alaska Native", "East Asian", "South Asian", "Native Hawaian or other Pacific Islander", "Black or African American", "White",
"More than one race")
/ other = "Other"
/ optionvalues = ("0," "1", "2", "3", "4", "5", "6", "7")
</radiobuttons>

<radiobuttons religion>
/ caption = "Which comes closest to your religion?"
/ options = ("None", "Agnostic", "Atheist", "Buddhist", "Christian-Catholic", "Christian-Protestant", "Hindu", "Jewish", "Muslim/Islamic", "Other")
/ optionvalues = ("0," "1", "2", "3", "4", "5", "6", "7", "8", "9")
</radiobuttons>

<slider politics>
/ caption = "Political Identity"
/ labels = ("strongly liberal", "moderately liberal", "slightly liberal", "slightly conservative", "moderately conservative", "strongly conservative")
/ range = (1, 6)
/ slidersize = (60%, 5%)
/ showtooltips = false
</slider>

<surveypage demographics1>
/ caption = "Please answer the following demographic questions"
/ fontstyle = ("Verdana", -16, true, false, false, false, 5, 0)
/ questions = [1=gender; 2=age; 3=relationship; 4=race; 5=religion; 6=politics]
</surveypage>

<survey demographics>
/ pages = [1=demographics1]
/ responsefontstyle = ("Verdana", -12, false, false, false, false, 5, 0)
/ itemfontstyle = ("Verdana", -13, false, false, false, false, 5, 0)
/ itemspacing = 2%
/ showpagenumbers = false
</survey>

<block demoinstr>
/ screencolor = (255, 255, 255)
/ preinstructions = (demo)
</block>

<page demo>
Please answer the following demographic questions. All of your answers are completely confidential and anonymous.^^
When you are ready, press the spacebar to proceed.
</page>

<block fin>
/ screencolor = (255, 255, 255)
/ preinstructions = (end)
</block>

<expt>
/ blocks = [1=instructions; 2=lines; 3=demoinstr; 4=demographics]
/ postinstructions = (end)
</expt>


> Regardless, I cannot seem to figure out why with the script below, only two images are appearing at a time, rather than three.

<list randomhpos>
/ items = (35%, 65%)
/ selectionrate = always
</list>

You have only *two* horizontal position values, not three. So, of course, the third image will necessarily have to be assigned a position that's already taken by one of the two other images.

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search