Reply To: Priming experiment with pseudorandomization

PennController for IBEX Forums Support Priming experiment with pseudorandomization Reply To: Priming experiment with pseudorandomization

#9727
Jeremy
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:

  1. Show a prime word
  2. Show a target word
  3. 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