Creating a survey that presents questions containing stimuli presented earlier


Creating a survey that presents questions containing stimuli presented...
Author
Message
satchmo496
satchmo496
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: 27, Visits: 56
Greetings!
I am creating a study in which participants will be shown a certain number of unique stimuli (the precise number of unique stimuli varies across conditions). After the stimuli presentation portion of the study, I'd like to ask participants how confident they are that they saw each stimulus with a series of likert questions. I have created an item that should be filled with the presented stimuli (using the ontrialend command). The problem I'm running into is that it's not clear to me how to draw from this item to build the likert questions that will be displayed at the end of the study. The code I currently have is pasted below. Thank you in advance for any guidance you can provide!

<item presenteditems>
</item>

<text recognition>
/ items = presenteditems
</text>

<item recognition

<list distractorTracker>
/ poolsize = 6
</list>

<picture target>
/ items = ("target.jpg")
</picture>

<picture distractors>
/ items = distractors
/ select = list.distractorTracker.nextindex
</picture>

<item distractors>
/ 1 = "distractor1.jpg"
/ 2 = "distractor2.jpg"
/ 3 = "distractor3.jpg"
/ 4 = "distractor4.jpg"
/ 5 = "distractor5.jpg"
/ 6 = "distractor6.jpg"
</item>

<picture blank>
/items = ("blank.jpg")
</picture>

<picture rightarrow>
/ items = ("rightarrow.jpg")
/ size = (75,75)
</picture>

<picture leftarrow>
/ items = ("leftarrow.jpg")
/ size = (75,75)
</picture>

<picture forwardmask>
/ items = ("mask1.jpg", "mask2.jpg")
</picture>

<picture backwardmask>
/ items = ("mask2.jpg", "mask1.jpg")
/ select = current (forwardmask)
</picture>

<text fixation>
/ items = ("+")
/ fontstyle = ("Times New", 34pt, true)
</text>

<text rightreminder>
/ items = ("I = Right")
/ position = (75, 25)
</text>

<text leftreminder>
/ items = ("E = Left")
/ position = (25, 25)
</text>

<text errormessage>
/ items = ("   ERROR   ")
/ color = (255, 0, 0)
/ fontstyle = ("Times New", 20pt, true)
</text>

<page intro1>
^^
^^
^^
^^
This is a task involving PERCEPTUAL VIGILANCE. On each trial, you will see either an arrow pointing
to the left (<--) or an arrow pointing to the right (-->). Your job is easy! Press the 'E' key on the keyboard if you see an arrow pointing to the left (<--),
and press the 'A' key on the keyboard if you see an arrow pointing to the right (-->). You should respond AS QUICKLY AS POSSIBLE.
^^
At the start of each trial you will see a + displayed in the middle of the screen. This is your signal that the trial is about to begin and you should focus your
attention on the area of the screen with the +.
^^
Remember, press the 'E' key if you see an arroe pointing left (<--).
^^
But press the 'I' key if you see an arrow pointing right (-->).
^^
</page>

<page intro2>
^^
^^
^^
^^
^^
^^
Just before each arrow that you are to identify you will see one or more brief flashes on your screen.
^^
It is your task to IGNORE these briefly flashed stimuli. Respond only to the last, clearly visible arrow shown on each trial.
</page>

<page intro3>
^^
^^
^^
^^
^^
When you press the space bar, the first set of trials will begin.
^^
As a reminder of the instructions for responding:
^^
Press the 'E' key if you see an arrow pointing to the left (<--).
^^
Press the 'I' key if you see an arrow pointing to the right (-->).
</page>

<page ready>
When you press the space bar, a new block of trials will start.
^^Be ready for the first trial when you press the space bar.
</page>

<page end>
^^
^^
^^
^^
^^
This portion of the experiment is now concluded.
^^
When you press the space bar you will be taken to the next part of the experiment.
</page>

<instruct>
/ nextkey = (" ")
/ prevkey = ("a")
</instruct>

<trial target_arrowleft>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("E")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=target; 422=backwardmask; 449=blank; 450=leftarrow]
/ ontrialend = [item.presenteditems.insertitem(target)]
</trial>

<trial target_arrowright>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("I")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=target; 422=backwardmask; 449=blank; 450=rightarrow]
/ ontrialend = [item.presenteditems.insertitem(target)]
</trial>

<trial distractor_arrowleft>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("E")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=distractors; 422=backwardmask; 449=blank; 450=leftarrow]
/ ontrialend = [item.presenteditems.insertitem(distractors)]
</trial>

<trial distractor_arrowright>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("I")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=distractors; 422=backwardmask; 449=blank; 450=rightarrow]
/ ontrialend = [item.presenteditems.insertitem(distractors)]
</trial>

<block twenty_exposure>
/ screencolor = white
/ bgstim = (leftreminder, rightreminder)
/ trials = [1-30 = random (target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft,
target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft, target_arrowright, target_arrowright, target_arrowright, target_arrowright,
target_arrowright, target_arrowright, target_arrowright, target_arrowright, target_arrowright, target_arrowright, distractor_arrowleft,
distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowright, distractor_arrowright,
distractor_arrowright,distractor_arrowright)]
/ preinstructions = (intro1, intro2, intro3)
/ errormessage = (errormessage, 200)
</block>

<block ten_exposure>
/ screencolor = white
/ bgstim = (leftreminder, rightreminder)
/ trials = [1-30 = random (target_arrowleft,
target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft, target_arrowright, target_arrowright, target_arrowright, target_arrowright, target_arrowright, distractor_arrowleft,
distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft,
distractor_arrowright, distractor_arrowright, distractor_arrowright,distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright)]
/ preinstructions = (intro1, intro2, intro3)
/ errormessage = (errormessage, 200)
</block>

<block six_exposure>
/ screencolor = white
/ bgstim = (leftreminder, rightreminder)
/ trials = [1-30 = random (target_arrowleft,
target_arrowleft, target_arrowleft, target_arrowright, target_arrowright, target_arrowright, distractor_arrowleft,
distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft,
distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright)]
/ preinstructions = (intro1, intro2, intro3)
/ errormessage = (errormessage, 200)
</block>

<expt>
/ blocks = [1=twenty_exposure]
/ subjects = (1 of 3)
/ postinstructions = (end)
</expt>

<expt>
/ blocks = [1=ten_exposure]
/ subjects = (2 of 3)
/ postinstructions = (end)
</expt>

<expt>
/ blocks = [1=six_exposure]
/ subjects = (3 of 3)
/ postinstructions = (end)
</expt>

<defaults>
/ fontstyle = ("Times New", 14pt)
/ screencolor = (255, 255, 255)
</defaults>
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: 13K, Visits: 102K
satchmo496 - 9/12/2024
Greetings!
I am creating a study in which participants will be shown a certain number of unique stimuli (the precise number of unique stimuli varies across conditions). After the stimuli presentation portion of the study, I'd like to ask participants how confident they are that they saw each stimulus with a series of likert questions. I have created an item that should be filled with the presented stimuli (using the ontrialend command). The problem I'm running into is that it's not clear to me how to draw from this item to build the likert questions that will be displayed at the end of the study. The code I currently have is pasted below. Thank you in advance for any guidance you can provide!

<item presenteditems>
</item>

<text recognition>
/ items = presenteditems
</text>

<item recognition

<list distractorTracker>
/ poolsize = 6
</list>

<picture target>
/ items = ("target.jpg")
</picture>

<picture distractors>
/ items = distractors
/ select = list.distractorTracker.nextindex
</picture>

<item distractors>
/ 1 = "distractor1.jpg"
/ 2 = "distractor2.jpg"
/ 3 = "distractor3.jpg"
/ 4 = "distractor4.jpg"
/ 5 = "distractor5.jpg"
/ 6 = "distractor6.jpg"
</item>

<picture blank>
/items = ("blank.jpg")
</picture>

<picture rightarrow>
/ items = ("rightarrow.jpg")
/ size = (75,75)
</picture>

<picture leftarrow>
/ items = ("leftarrow.jpg")
/ size = (75,75)
</picture>

<picture forwardmask>
/ items = ("mask1.jpg", "mask2.jpg")
</picture>

<picture backwardmask>
/ items = ("mask2.jpg", "mask1.jpg")
/ select = current (forwardmask)
</picture>

<text fixation>
/ items = ("+")
/ fontstyle = ("Times New", 34pt, true)
</text>

<text rightreminder>
/ items = ("I = Right")
/ position = (75, 25)
</text>

<text leftreminder>
/ items = ("E = Left")
/ position = (25, 25)
</text>

<text errormessage>
/ items = ("   ERROR   ")
/ color = (255, 0, 0)
/ fontstyle = ("Times New", 20pt, true)
</text>

<page intro1>
^^
^^
^^
^^
This is a task involving PERCEPTUAL VIGILANCE. On each trial, you will see either an arrow pointing
to the left (<--) or an arrow pointing to the right (-->). Your job is easy! Press the 'E' key on the keyboard if you see an arrow pointing to the left (<--),
and press the 'A' key on the keyboard if you see an arrow pointing to the right (-->). You should respond AS QUICKLY AS POSSIBLE.
^^
At the start of each trial you will see a + displayed in the middle of the screen. This is your signal that the trial is about to begin and you should focus your
attention on the area of the screen with the +.
^^
Remember, press the 'E' key if you see an arroe pointing left (<--).
^^
But press the 'I' key if you see an arrow pointing right (-->).
^^
</page>

<page intro2>
^^
^^
^^
^^
^^
^^
Just before each arrow that you are to identify you will see one or more brief flashes on your screen.
^^
It is your task to IGNORE these briefly flashed stimuli. Respond only to the last, clearly visible arrow shown on each trial.
</page>

<page intro3>
^^
^^
^^
^^
^^
When you press the space bar, the first set of trials will begin.
^^
As a reminder of the instructions for responding:
^^
Press the 'E' key if you see an arrow pointing to the left (<--).
^^
Press the 'I' key if you see an arrow pointing to the right (-->).
</page>

<page ready>
When you press the space bar, a new block of trials will start.
^^Be ready for the first trial when you press the space bar.
</page>

<page end>
^^
^^
^^
^^
^^
This portion of the experiment is now concluded.
^^
When you press the space bar you will be taken to the next part of the experiment.
</page>

<instruct>
/ nextkey = (" ")
/ prevkey = ("a")
</instruct>

<trial target_arrowleft>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("E")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=target; 422=backwardmask; 449=blank; 450=leftarrow]
/ ontrialend = [item.presenteditems.insertitem(target)]
</trial>

<trial target_arrowright>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("I")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=target; 422=backwardmask; 449=blank; 450=rightarrow]
/ ontrialend = [item.presenteditems.insertitem(target)]
</trial>

<trial distractor_arrowleft>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("E")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=distractors; 422=backwardmask; 449=blank; 450=leftarrow]
/ ontrialend = [item.presenteditems.insertitem(distractors)]
</trial>

<trial distractor_arrowright>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("I")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=distractors; 422=backwardmask; 449=blank; 450=rightarrow]
/ ontrialend = [item.presenteditems.insertitem(distractors)]
</trial>

<block twenty_exposure>
/ screencolor = white
/ bgstim = (leftreminder, rightreminder)
/ trials = [1-30 = random (target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft,
target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft, target_arrowright, target_arrowright, target_arrowright, target_arrowright,
target_arrowright, target_arrowright, target_arrowright, target_arrowright, target_arrowright, target_arrowright, distractor_arrowleft,
distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowright, distractor_arrowright,
distractor_arrowright,distractor_arrowright)]
/ preinstructions = (intro1, intro2, intro3)
/ errormessage = (errormessage, 200)
</block>

<block ten_exposure>
/ screencolor = white
/ bgstim = (leftreminder, rightreminder)
/ trials = [1-30 = random (target_arrowleft,
target_arrowleft, target_arrowleft, target_arrowleft, target_arrowleft, target_arrowright, target_arrowright, target_arrowright, target_arrowright, target_arrowright, distractor_arrowleft,
distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft,
distractor_arrowright, distractor_arrowright, distractor_arrowright,distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright)]
/ preinstructions = (intro1, intro2, intro3)
/ errormessage = (errormessage, 200)
</block>

<block six_exposure>
/ screencolor = white
/ bgstim = (leftreminder, rightreminder)
/ trials = [1-30 = random (target_arrowleft,
target_arrowleft, target_arrowleft, target_arrowright, target_arrowright, target_arrowright, distractor_arrowleft,
distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft, distractor_arrowleft,
distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright, distractor_arrowright)]
/ preinstructions = (intro1, intro2, intro3)
/ errormessage = (errormessage, 200)
</block>

<expt>
/ blocks = [1=twenty_exposure]
/ subjects = (1 of 3)
/ postinstructions = (end)
</expt>

<expt>
/ blocks = [1=ten_exposure]
/ subjects = (2 of 3)
/ postinstructions = (end)
</expt>

<expt>
/ blocks = [1=six_exposure]
/ subjects = (3 of 3)
/ postinstructions = (end)
</expt>

<defaults>
/ fontstyle = ("Times New", 14pt)
/ screencolor = (255, 255, 255)
</defaults>

You use that <item> element like any other, it does not make a difference that you only fill it with items at runtime.

The syntax in your ontrialend logic, however, is totally off and will not actually do anything.

<trial distractor_arrowleft>
/ pretrialpause = 300
/ validresponse = ("I", "E")
/ correctresponse = ("E")
/ stimulustimes = [1=fixation; 401=forwardmask; 421=distractors; 422=backwardmask; 449=blank; 450=leftarrow]
// ontrialend = [item.presenteditems.insertitem(distractors)] broken syntax does nothing
/ ontrialend = [
    item.presenteditems.appenditem(picture.distractors.currentitem); // this actually adds the displayed distractor image to the item element
]
</trial>

Edited Last Month by Dave
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search