introducing fillers at specific index values in the running order

26 views
Skip to first unread message

Tyler Lanni

unread,
May 23, 2021, 10:13:00 AM5/23/21
to ibexexperiments
Hi,

I'm trying to get more control over the running order of my experiment. 
- I have consent pages/instructions/practice items
- I have 16 experimental items and 32 fillers. 
- Each experimental item has 4 conditions. 
- All items/fillers are pre-randomized in python. The IBEX script is given these items in the order I want them to be shown.

I've tried a number of different solutions but can't seem to get the control I want.
I would like to have an ordering like:

item1, filler, filler, item2, filler, filler, item3, filler, item4, filler, filler, filler ....

I thought about making a runningOrder function like the one in the documentation but am having trouble doing so. I thought I could make an array of all the indexes in the running order and insert filler items at those indexes, but I don't know how to have the function access the next filler. 

I thought I got close by doing something like followEachWith(startsWIth("filler"), startsWith("condition")) but this just displays all of my fillers before moving on to the next item and repeats.

Can someone tell me the best way to approach this?

Thanks!

Alexandre Cremers

unread,
May 24, 2021, 3:37:58 AM5/24/21
to ibexexp...@googlegroups.com
Hi,

By default I don't think Ibex will change the order of your items, so if they're already in the order you want them, you can just call seq(anyType()). Let us know if that doesn't work.

Best,
Alexandre

--
You received this message because you are subscribed to the Google Groups "ibexexperiments" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibexexperimen...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ibexexperiments/8e6d86f7-ec39-4559-b3d1-d0c88a3d9010n%40googlegroups.com.

Tyler Lanni

unread,
May 24, 2021, 6:21:32 PM5/24/21
to ibexexp...@googlegroups.com
Hi Alexandre, 

Thanks for replying! 

Currently, using things like anyType, not(), etc. makes me go through all of my fillers first, even though there are experimental items that come before it. So, an items variable with this like this:


[["condition 15a Q1", 1], "DashedSentence", {s: ["Il signore", "che", "ha sorpreso ", "il ladro ", "ha denunciato", "l'incidente."]},
"Question", {q: "Il signore ha sopreso il ladro. ",
as: ["Vero ",
"Falso "]}
],

[["condition 15b Q1", 1], "DashedSentence", {s: ["il signore ", "che", "il ladro ", "ha sorpreso ", "ha denunciato", "l'incidente."]},
"Question", {q: "Il signore ha sopreso il ladro. ",
as: ["Falso ",
"Vero "]}
],

[["condition 15a Q2", 1], "DashedSentence", {s: ["Il signore", "che", "ha sorpreso ", "il ladro ", "ha denunciato", "l'incidente."]},
"Question", {q: "Il ladro ha sorpreso il signore. ",
as: ["Falso ",
"Vero "]}
],

[["condition 15b Q2", 1], "DashedSentence", {s: ["il signore ", "che", "il ladro ", "ha sorpreso ", "ha denunciato", "l'incidente."]},
"Question", {q: "Il ladro ha sorpreso il signore. ",
as: ["Vero ",
"Falso "]}
],
          ["filler 5.0 Filler_Sub", "DashedSentence", {s: ["Michele ", "ha usato ", "la bicicletta", "mentre ", "il meccanico", "riparava ", "l'automobile."]},
"Question", {q: "Michele ha usato la bicicletta. ",
as: ["Vero ",
"Falso"]}
],

["filler 23.0 Filler_WH", "DashedSentence", {s: ["Marco ", "ha detto ", "che ", "i suoi fratelli", "sono già entrati ", "al cinema."]},
"Question", {q: "Marco è entrato al cinema. ",
as: ["Vero ",
"Falso"]}
],

[["condition 16a Q2", 2], "DashedSentence", {s: ["Il passeggero", "che", "ha chiamato", "il capotreno", "ha assistito", "ad un furto."]},
"Question", {q: "Il capotreno ha chiamato il passeggero. ",
as: ["Falso ",
"Vero "]}
],

[["condition 16b Q1", 2], "DashedSentence", {s: ["Il passeggero", "che", "il capotreno", "ha chiamato", "ha assistito", "ad un furto."]},
"Question", {q: "Il passeggero ha chiamato il capotreno.",
as: ["Falso ",
"Vero "]}
],

[["condition 16a Q1", 2], "DashedSentence", {s: ["Il passeggero", "che", "ha chiamato", "il capotreno", "ha assistito", "ad un furto."]},
"Question", {q: "Il passeggero ha chiamato il capotreno.",
as: ["Vero ",
"Falso "]}
],

[["condition 16b Q2", 2], "DashedSentence", {s: ["Il passeggero", "che", "il capotreno", "ha chiamato", "ha assistito", "ad un furto."]},
"Question", {q: "Il capotreno ha chiamato il passeggero. ",
as: ["Vero ",
"Falso "]}
],
 
["filler 13.0 Filler_Sub", "DashedSentence", {s: ["Daniele ", "ha venduto", "la macchina ", "perché", "la moglie ", "ne ha comprata", "una nuova."]},
"Question", {q: "La moglie di Daniele ha comprato una macchina nuova. ",
as: ["Vero ",
"Falso"]}
],

["filler 29.0 Filler_WH", "DashedSentence", {s: ["Serena ", "ha domandato", "se ", "la sorella ", "tornerà ", "in Italia."]},
"Question", {q: "La sorella di Serena ha chiesto qualocsa. ",
as: ["Vero ",
"Falso"]}
],


will skip all of my condition items and only print out fillers. It seems very odd because shouldn't they be printed in the order they occur? seq(anyType) does this for my instructions/practice/consent pages, but the items/fillers give me problems.

You received this message because you are subscribed to a topic in the Google Groups "ibexexperiments" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ibexexperiments/AFFkf5ncV_s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ibexexperimen...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ibexexperiments/CABk4Z5enTVYM5taeO_iVVM7_4wD8Wi%2BEzznUGknSJCSk1cTvdQ%40mail.gmail.com.

Tyler Lanni

unread,
May 24, 2021, 9:41:02 PM5/24/21
to ibexexp...@googlegroups.com
I *think* I figured it out. I had to provide numbers to each filler as well according to the order I want. I hope this doesn't affect my latin-squaring though. If you know of any issues that will come up, please let me know!

Thanks!

Alexandre Cremers

unread,
May 25, 2021, 1:41:24 AM5/25/21
to ibexexp...@googlegroups.com
Glad you figured it out! I thought the shuffle sequence kept the given order, but things might be different when there's a latin square involved. In case you're curious, you can check how all the shuffle sequence functions are defined here.
Best,
Alexandre


Reply all
Reply to author
Forward
0 new messages