PennController for IBEX › Forums › Support › Priming experiment with pseudorandomization › Reply To: Priming experiment with pseudorandomization
November 22, 2022 at 7:13 pm
#9727
Keymaster
Hi,
Looking at your question and your tables, I think that you are talking about presenting several stimuli within a *single* trial, and that your subsequences prime-target correspond to single trials. As far as I understand, a single trial in your experiment has the following structure:
- Show a prime word
- Show a target word
- Show a post-target word (filler trials only)
My suggestion is you add a column after target in your table for the third word, and simply leave it empty for the target trials. Then, in the newTrial command inside Template, you include the third stimulus only for the filler items. The basic idea would be something like this:
Table:
group,prime,target,post,pairtype,condition,correct A,prime1A,target1A,,target,noun.noun,f A,prime2A,target2A,,target,noun.noun,f A,prime3A,target3A,,target,noun.noun,f A,prime4A,target4A,,target,noun.noun,f A,prime5A,target5A,,target,noun.noun,f A,filler1A,filler1A,filler1A,filler,filler,f A,filler2A,filler2A,filler2A,filler,filler,f A,filler3A,filler3A,filler3A,filler,filler,f A,filler4A,filler4A,filler4A,filler,filler,f A,filler5A,filler5A,filler5A,filler,filler,f
Script:
Template( "mytable.csv" , row =>
newTrial( row.condition ,
newText( "prime", row.prime ).print(),
newTimer(1000).start().wait(),
getText( "prime" ).remove()
,
newText( "target", row.target ).print(),
newTimer(1000).start().wait(),
getText( "target" ).remove()
,
...( row.condition=="filler" ? [
newText( "post", row.post ).print(),
newTimer(1000).start().wait(),
getText( "post" ).remove()
] : [] )
// ...
)
.log("pairtype",row.pairtype)
// ...
)
Jeremy