Random stimulus pairs from lists


Author
Message
Lafayote
Lafayote
Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)
Group: Forum Members
Posts: 2, Visits: 16
Hello,



I want to present two statements on the screen which belong together, i.e. any time a statement from stimulus list A is shown, the respective statement from stimulus list B should appear as well. I could already solve this issue with help of the /select = ....currentindex function and defining separate stim/stimB lists (each containing 24 statements).
I am now struggling the the randomization of the statement sequence: I want to counterbalance whether statement A is presented first and followed by the respective statement B, or whether statement B is presented first and followed by the respective statement A. I thought of using a counter, however, it seems that there are still some double trials because sometimes, the statement is drawn directly from the list, and sometimes only indirectly via the corresponding list.

How can I solve this problem and "exclude" also those statements which were only drawn via the /select function?

Any advice would be great!

Thank you in advance and kind regards,
L.

-------

<text high_highlow_updown>
/items = high_status
/select = mycounter
/resetinterval = 0
/position = (30,12.5)
/fontstyle = ("Arial", 20pt)
</text>

<text low_highlow_updown>
/items = low_status
/select = text.high_highlow_updown.currentindex
/position = (30,65)
/fontstyle = ("Arial", 20pt)
</text>

<text low_lowhigh_updown>
/items = low_status
/select = mycounter
/resetinterval = 0
/position = (30,12.5)
/fontstyle = ("Arial", 20pt)
</text>

<text high_lowhigh_updown>
/items = high_status
/select = text.low_lowhigh_updown.currentindex
/resetinterval = 0
/position = (70,65)
/fontstyle = ("Arial", 20pt)
</text>

<counter mycounter>
/ select = noreplace(1-24)
/ selectionrate = always
/ resetinterval = 0
</counter>

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: 12K, Visits: 98K
Lafayote - Tuesday, July 24, 2018
Hello,



I want to present two statements on the screen which belong together, i.e. any time a statement from stimulus list A is shown, the respective statement from stimulus list B should appear as well. I could already solve this issue with help of the /select = ....currentindex function and defining separate stim/stimB lists (each containing 24 statements).
I am now struggling the the randomization of the statement sequence: I want to counterbalance whether statement A is presented first and followed by the respective statement B, or whether statement B is presented first and followed by the respective statement A. I thought of using a counter, however, it seems that there are still some double trials because sometimes, the statement is drawn directly from the list, and sometimes only indirectly via the corresponding list.

How can I solve this problem and "exclude" also those statements which were only drawn via the /select function?

Any advice would be great!

Thank you in advance and kind regards,
L.

-------

<text high_highlow_updown>
/items = high_status
/select = mycounter
/resetinterval = 0
/position = (30,12.5)
/fontstyle = ("Arial", 20pt)
</text>

<text low_highlow_updown>
/items = low_status
/select = text.high_highlow_updown.currentindex
/position = (30,65)
/fontstyle = ("Arial", 20pt)
</text>

<text low_lowhigh_updown>
/items = low_status
/select = mycounter
/resetinterval = 0
/position = (30,12.5)
/fontstyle = ("Arial", 20pt)
</text>

<text high_lowhigh_updown>
/items = high_status
/select = text.low_lowhigh_updown.currentindex
/resetinterval = 0
/position = (70,65)
/fontstyle = ("Arial", 20pt)
</text>

<counter mycounter>
/ select = noreplace(1-24)
/ selectionrate = always
/ resetinterval = 0
</counter>

You should not need two lists or counters, one suffices. Consider this example, with two trials, one of which presents statement A first, the other presents statement B first.

<text a>
/ items = aitems
/ select = values.itemnumber
</text>

<text b>
/ items = bitems
/ select = values.itemnumber
</text>

<item aitems>
/ 1 = "A 01"
/ 2 = "A 02"
/ 3 = "A 03"
/ 4 = "A 04"
/ 5 = "A 05"
/ 6 = "A 06"
</item>

<item bitems>
/ 1 = "B 01"
/ 2 = "B 02"
/ 3 = "B 03"
/ 4 = "B 04"
/ 5 = "B 05"
/ 6 = "B 06"
</item>

<list allitemnumbers>
/ poolsize = 6
</list>

<trial ab>
/ ontrialbegin = [
    values.itemnumber = list.allitemnumbers.nextindex;
]
/ stimulustimes = [0=a; 2000=b]
/ validresponse = (57)
</trial>

<trial ba>
/ ontrialbegin = [
    values.itemnumber = list.allitemnumbers.nextindex;
]
/ stimulustimes = [0=b; 2000=a]
/ validresponse = (57)
</trial>

<block myblock>
/ trials = [1-6 = noreplace(ab, ba)]
</block>

<values>
/ itemnumber = 1
</values>


Lafayote
Lafayote
Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)Associate Member (181 reputation)
Group: Forum Members
Posts: 2, Visits: 16
Thank you! I adapted it for my purposes and it worked perfectly!

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search