Word lists and counterbalancing

Hello, I am designing an associative memory experiment (within-subjects design). My design is as follows:

Learning phase - participants see a list of word pairs (book-chair)
Test Phase 1 – participants see a list of single words. Participants need to respond as old or new. Key press nReps = 1
Test Phase 2 – participants see a list of word pairs. Participants needs to respond as old or new. Key press. nReps = 1


  1. My list of words at test phase should only be shown once, however, some words are repeated. How could I ensure that my words are shown once?
  2. I would like to counterbalance the order of Test Phase 1 and 2 across participants. Example: Participant one does Test 1 then 2, Participant two does Test 2 then 1. How could I formulate this?


I am not sure that I t understand question 1. There are some words which might be repeated in the test phase while others may be shown only once? Is that correct? A simple solution is to have a word as often on your stimulus as you want it to be shown. So, words presented only once appear only one time on your learn-list, words shown twice appear twice on your learn-list.

There are multiple solutions to your second problem. You could use some code and assign the test-order on the basis of the participant number or a random number. To use the participant number, add the following to the Begin Experiment tab of a code-component that occurs before testing.

testlist1 = " "
testlist2 = " "

if int(expInfo['participant'])%2 == 0:
    testlist1 = "singlewords.xlsx"
    testlist2 = "wordpairs.xlsx"
    testlist1 = "wordpairs.xlsx"
    testlist2 = "singlewords.xlsx"

Then set $testlist1 in Condition-parameter of the loop you use to loop through the first test and $testlist2 in Condition-parameter of the loop of the second test. Note that with approach your routine should be able to handle the presentation of a single word and of word-pairs.

Do not forget to add the Excel-files, singlewords.xlsx, wordpairs.xlsx, as online resource via edit experiment settings-Online if you plan to run the experiment online.

Best wishes Jens

Hello Jens,

Thank you for your assistance. With regard to my first question, the words during my test phase (participants will respond to as old or new) sometimes are shown multiple times however they are written once in the excel file.

Regarding the code, I am having trouble getting it to work. I am unsure where I need to add the code (I have added the code prior to the first test phase routine). I am also unsure where I need to add $testlist1 in Condition-parameter and $testlist2 in Condition-parameter. The ‘conditions’ of the trials loop includes my excel file with the parameters (excel file).

Hello isecer,

when you want to show only some words more than once, simply repeat them in your Excel-list as often as you want them to show.

You add the suggested code as a code-component (Begin Experiment tab) to the first routine of your experiment.You use $testlist1 and $testlist2 as condition-file in the relevant loops.

Best wishes Jens