Associating a specific list of item to a specific stimulus


Author
Message
Daniela Ruzzante
Daniela Ruzzante
Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)
Group: Forum Members
Posts: 5, Visits: 18
Hi Everyone, 
I'm not new to inquisit but in this momento I'm having trouble with an experiment I'm building.

  
This is the paradigm i need to build. I have two different kind of stimuli (a figure and a text) that needs to be followed by 8 different word. participant need to say if the word was part of the phrase or not.
The problem is that I have 16 figure and 16 phrases, and each phrases has its own list of words. At the same time, the figure and the phrase, once they have been presented, they do not need to appear again.

I've been able to pair the two stimuli, but now i'm having trouble in pairing the list of words to the specific phrases. Basically, What I need to tell Inquisit is to present list of words "A" only when the first phrase appeard.
This is what i've come so far,, any idea on how to solve the problem?
Many thanks and I hope I've been clear :)

<text frasi>
/ items = frasi
/ position = (50,70)
/ numitems = 4
/ select = values.itemnumber
/ resetinterval = 0
</text>

<item frasi>
/ 1 = "Ha rubato il portafogli"
/ 2 = "Ha aiutato il senzatetto"
/ 3 = "Ha letto tutto il libro in un giorno"
/ 4 = "Si è perso nel parcheggio"
</item>

<picture stimoli>
/ halign = center
/ items = stimoli
/ erase = true (255, 255, 255)
/ numitems = 4
/ select = values.itemnumber
/ position = (50, 40)
/ resetinterval = 0
</picture>

<item stimoli>
/ 1="A1.jpg"
/ 2="A2.jpg"
/ 3="P1.jpg"
/ 4="P2.jpg"
</item>

<list allitemnumbers>
/ poolsize = 4
</list>

<values>
/ itemnumber = 1
</values>

<trial Slides>
/ ontrialbegin = [values.itemnumber = list.allitemnumbers.nextindex]
/ stimulustimes = [0=stimoli; 0=frasi]
/ timeout = 5000
</trial>

<block provaBlocco_1>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_2>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_3>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_4>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

************

<text Parole1>
/numitems = 2
/items = ("Portafogli", "Rubato")
/font = ("arial", -30, 600, 0, 49)
/txbgcolor = (255, 255, 255)
/position = (10, 10)
</text>

<text Probe1>
/numitems = 1
/items = ("Disonesto")
/font = ("arial", -30, 600, 0, 49)
/txbgcolor = (255, 255, 255)
/position = (10, 10)
</text>

<trial paroleFrase1>
/validkeys = ("D","K")
/correctresponse = ("D")
/ stimulusframes=[1=Parole1]
/ numframes=2
/posttrialpause = 500
</trial>

<trial probeFrase1>
/validkeys = ("D","K")
/correctresponse = ("K")
/ stimulusframes=[1=Probe1]
/ numframes=1
/posttrialpause = 500
</trial>

<block Compito_1>
/ trials = [1-3 = noreplace(paroleFrase1,probeFrase1)]
/ screencolor = (255, 255, 255)
/ skip
</block>

<expt Prova>
/subjects = (1 of 1)
/blocks = [1= provaBlocco_1; 2=Compito_1]
</expt>
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
Daniela Ruzzante - 2/15/2023
Hi Everyone, 
I'm not new to inquisit but in this momento I'm having trouble with an experiment I'm building.

  
This is the paradigm i need to build. I have two different kind of stimuli (a figure and a text) that needs to be followed by 8 different word. participant need to say if the word was part of the phrase or not.
The problem is that I have 16 figure and 16 phrases, and each phrases has its own list of words. At the same time, the figure and the phrase, once they have been presented, they do not need to appear again.

I've been able to pair the two stimuli, but now i'm having trouble in pairing the list of words to the specific phrases. Basically, What I need to tell Inquisit is to present list of words "A" only when the first phrase appeard.
This is what i've come so far,, any idea on how to solve the problem?
Many thanks and I hope I've been clear :)

<text frasi>
/ items = frasi
/ position = (50,70)
/ numitems = 4
/ select = values.itemnumber
/ resetinterval = 0
</text>

<item frasi>
/ 1 = "Ha rubato il portafogli"
/ 2 = "Ha aiutato il senzatetto"
/ 3 = "Ha letto tutto il libro in un giorno"
/ 4 = "Si è perso nel parcheggio"
</item>

<picture stimoli>
/ halign = center
/ items = stimoli
/ erase = true (255, 255, 255)
/ numitems = 4
/ select = values.itemnumber
/ position = (50, 40)
/ resetinterval = 0
</picture>

<item stimoli>
/ 1="A1.jpg"
/ 2="A2.jpg"
/ 3="P1.jpg"
/ 4="P2.jpg"
</item>

<list allitemnumbers>
/ poolsize = 4
</list>

<values>
/ itemnumber = 1
</values>

<trial Slides>
/ ontrialbegin = [values.itemnumber = list.allitemnumbers.nextindex]
/ stimulustimes = [0=stimoli; 0=frasi]
/ timeout = 5000
</trial>

<block provaBlocco_1>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_2>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_3>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_4>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

************

<text Parole1>
/numitems = 2
/items = ("Portafogli", "Rubato")
/font = ("arial", -30, 600, 0, 49)
/txbgcolor = (255, 255, 255)
/position = (10, 10)
</text>

<text Probe1>
/numitems = 1
/items = ("Disonesto")
/font = ("arial", -30, 600, 0, 49)
/txbgcolor = (255, 255, 255)
/position = (10, 10)
</text>

<trial paroleFrase1>
/validkeys = ("D","K")
/correctresponse = ("D")
/ stimulusframes=[1=Parole1]
/ numframes=2
/posttrialpause = 500
</trial>

<trial probeFrase1>
/validkeys = ("D","K")
/correctresponse = ("K")
/ stimulusframes=[1=Probe1]
/ numframes=1
/posttrialpause = 500
</trial>

<block Compito_1>
/ trials = [1-3 = noreplace(paroleFrase1,probeFrase1)]
/ screencolor = (255, 255, 255)
/ skip
</block>

<expt Prova>
/subjects = (1 of 1)
/blocks = [1= provaBlocco_1; 2=Compito_1]
</expt>

The way to do this elegantly and efficiently is to use nested lists to select the probe items applicable to the sentence presented. Example below:

<values>
/ sentencenumber = 1
/ probenumber = 1
/ probetype = ""
/ probecount = 0
</values>

<list sentences>
/ poolsize = 4
</list>

// 4 sentences in this example
<block exampleblock>
/ trials = [1-4 = sentencetrial]
</block>

<trial sentencetrial>
/ ontrialbegin = [
    values.sentencenumber = list.sentences.nextindex;
    values.probecount = 0;
    values.probenumber = "";
    values.probetype = "";
]
/ stimulusframes = [1=sentence]
/ validresponse = (57)
/ branch = [
    trial.probetrial;
]
</trial>

<trial probetrial>
/ ontrialbegin = [
    values.probecount += 1;
    values.probenumber = list.probelist.nextvalue;
    values.probetype = list.probetype.nextvalue;
]
/ stimulusframes = [1=wordprobe]
/ validresponse = ("D", "K")
/ iscorrectresponse = [
    (values.probetype == 1 && trial.probetrial.response == 32) || (values.probetype == 0 && trial.probetrial.response == 37)
]
/ branch = [
    if (values.probecount < 8) {
        trial.probetrial;
    };
]
</trial>


<text sentence>
/ items = sentenceitems
/ select = values.sentencenumber
</text>

<item sentenceitems>
/ 1 = "Sentence A"
/ 2 = "Sentence B"
/ 3 = "Sentence C"
/ 4 = "Sentence D"
</item>

// select the list of probes according to the presented sentence number
<list probelist>
/ items = (list.aprobe.nextvalue, list.bprobe.nextvalue, list.cprobe.nextvalue, list.dprobe.nextvalue)
/ selectionmode = values.sentencenumber
</list>

<list probetype>
/ items = (list.aprobetype.nextvalue, list.bprobetype.nextvalue, list.cprobetype.nextvalue, list.dprobetype.nextvalue)
/ selectionmode = values.sentencenumber
</list>

// probes pertaining to sentence A are items 1 to 8
<list aprobe>
/ items = (1,2,3,4,5,6,7,8)
</list>

// 1 = probe is target (was part of sentence)
// 2 = probe is distractor (was not part of sentence)
<list aprobetype>
/ items = (1,1,1,1,0,0,0,0)
/ selectionmode = list.aprobe.currentindex
</list>

// probes pertaining to sentence B are items 9 to 16
<list bprobe>
/ items = (9,10,11,12,13,14,15,16)
</list>

<list bprobetype>
/ items = (1,1,1,1,0,0,0,0)
/ selectionmode = list.bprobe.currentindex
</list>

// probes pertaining to sentence C are items 17 to 24
<list cprobe>
/ items = (17,18,19,20,21,22,23,24)
</list>

<list cprobetype>
/ items = (1,1,1,1,0,0,0,0)
/ selectionmode = list.cprobe.currentindex
</list>

// probes pertaining to sentence D are items 25 to 32
<list dprobe>
/ items = (25,26,27,28,29,30,31,32)
</list>

<list dprobetype>
/ items = (1,1,1,1,0,0,0,0)
/ selectionmode = list.dprobe.currentindex
</list>

<item wordprobeitems>
/ 1 = "A Target 1"
/ 2 = "A Target 2"
/ 3 = "A Target 3"
/ 4 = "A Target 4"
/ 5 = "A Distractor 1"
/ 6 = "A Distractor 2"
/ 7 = "A Distractor 3"
/ 8 = "A Distractor 4"

/ 9 = "B Target 1"
/ 10 = "B Target 2"
/ 11 = "B Target 3"
/ 12 = "B Target 4"
/ 13 = "B Distractor 1"
/ 14 = "B Distractor 2"
/ 15 = "B Distractor 3"
/ 16 = "B Distractor 4"

/ 17 = "C Target 1"
/ 18 = "C Target 2"
/ 19 = "C Target 3"
/ 20 = "C Target 4"
/ 21 = "C Distractor 1"
/ 22 = "C Distractor 2"
/ 23 = "C Distractor 3"
/ 24 = "C Distractor 4"

/ 25 = "D Target 1"
/ 26 = "D Target 2"
/ 27 = "D Target 3"
/ 28 = "D Target 4"
/ 29 = "D Distractor 1"
/ 30 = "D Distractor 2"
/ 31 = "D Distractor 3"
/ 32 = "D Distractor 4"
</item>

<text wordprobe>
/ items = wordprobeitems
/ select = values.probenumber
</text>


Daniela Ruzzante
Daniela Ruzzante
Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)Associate Member (67 reputation)
Group: Forum Members
Posts: 5, Visits: 18
Dave - 2/15/2023
Daniela Ruzzante - 2/15/2023
Hi Everyone, 
I'm not new to inquisit but in this momento I'm having trouble with an experiment I'm building.

  
This is the paradigm i need to build. I have two different kind of stimuli (a figure and a text) that needs to be followed by 8 different word. participant need to say if the word was part of the phrase or not.
The problem is that I have 16 figure and 16 phrases, and each phrases has its own list of words. At the same time, the figure and the phrase, once they have been presented, they do not need to appear again.

I've been able to pair the two stimuli, but now i'm having trouble in pairing the list of words to the specific phrases. Basically, What I need to tell Inquisit is to present list of words "A" only when the first phrase appeard.
This is what i've come so far,, any idea on how to solve the problem?
Many thanks and I hope I've been clear :)

<text frasi>
/ items = frasi
/ position = (50,70)
/ numitems = 4
/ select = values.itemnumber
/ resetinterval = 0
</text>

<item frasi>
/ 1 = "Ha rubato il portafogli"
/ 2 = "Ha aiutato il senzatetto"
/ 3 = "Ha letto tutto il libro in un giorno"
/ 4 = "Si è perso nel parcheggio"
</item>

<picture stimoli>
/ halign = center
/ items = stimoli
/ erase = true (255, 255, 255)
/ numitems = 4
/ select = values.itemnumber
/ position = (50, 40)
/ resetinterval = 0
</picture>

<item stimoli>
/ 1="A1.jpg"
/ 2="A2.jpg"
/ 3="P1.jpg"
/ 4="P2.jpg"
</item>

<list allitemnumbers>
/ poolsize = 4
</list>

<values>
/ itemnumber = 1
</values>

<trial Slides>
/ ontrialbegin = [values.itemnumber = list.allitemnumbers.nextindex]
/ stimulustimes = [0=stimoli; 0=frasi]
/ timeout = 5000
</trial>

<block provaBlocco_1>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_2>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_3>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

<block provaBlocco_4>
/trials = [1 = noreplace(Slides)]
/screencolor = (255, 255, 255)
</block>

************

<text Parole1>
/numitems = 2
/items = ("Portafogli", "Rubato")
/font = ("arial", -30, 600, 0, 49)
/txbgcolor = (255, 255, 255)
/position = (10, 10)
</text>

<text Probe1>
/numitems = 1
/items = ("Disonesto")
/font = ("arial", -30, 600, 0, 49)
/txbgcolor = (255, 255, 255)
/position = (10, 10)
</text>

<trial paroleFrase1>
/validkeys = ("D","K")
/correctresponse = ("D")
/ stimulusframes=[1=Parole1]
/ numframes=2
/posttrialpause = 500
</trial>

<trial probeFrase1>
/validkeys = ("D","K")
/correctresponse = ("K")
/ stimulusframes=[1=Probe1]
/ numframes=1
/posttrialpause = 500
</trial>

<block Compito_1>
/ trials = [1-3 = noreplace(paroleFrase1,probeFrase1)]
/ screencolor = (255, 255, 255)
/ skip
</block>

<expt Prova>
/subjects = (1 of 1)
/blocks = [1= provaBlocco_1; 2=Compito_1]
</expt>

The way to do this elegantly and efficiently is to use nested lists to select the probe items applicable to the sentence presented. Example below:

<values>
/ sentencenumber = 1
/ probenumber = 1
/ probetype = ""
/ probecount = 0
</values>

<list sentences>
/ poolsize = 4
</list>

// 4 sentences in this example
<block exampleblock>
/ trials = [1-4 = sentencetrial]
</block>

<trial sentencetrial>
/ ontrialbegin = [
    values.sentencenumber = list.sentences.nextindex;
    values.probecount = 0;
    values.probenumber = "";
    values.probetype = "";
]
/ stimulusframes = [1=sentence]
/ validresponse = (57)
/ branch = [
    trial.probetrial;
]
</trial>

<trial probetrial>
/ ontrialbegin = [
    values.probecount += 1;
    values.probenumber = list.probelist.nextvalue;
    values.probetype = list.probetype.nextvalue;
]
/ stimulusframes = [1=wordprobe]
/ validresponse = ("D", "K")
/ iscorrectresponse = [
    (values.probetype == 1 && trial.probetrial.response == 32) || (values.probetype == 0 && trial.probetrial.response == 37)
]
/ branch = [
    if (values.probecount < 8) {
        trial.probetrial;
    };
]
</trial>


<text sentence>
/ items = sentenceitems
/ select = values.sentencenumber
</text>

<item sentenceitems>
/ 1 = "Sentence A"
/ 2 = "Sentence B"
/ 3 = "Sentence C"
/ 4 = "Sentence D"
</item>

// select the list of probes according to the presented sentence number
<list probelist>
/ items = (list.aprobe.nextvalue, list.bprobe.nextvalue, list.cprobe.nextvalue, list.dprobe.nextvalue)
/ selectionmode = values.sentencenumber
</list>

<list probetype>
/ items = (list.aprobetype.nextvalue, list.bprobetype.nextvalue, list.cprobetype.nextvalue, list.dprobetype.nextvalue)
/ selectionmode = values.sentencenumber
</list>

// probes pertaining to sentence A are items 1 to 8
<list aprobe>
/ items = (1,2,3,4,5,6,7,8)
</list>

// 1 = probe is target (was part of sentence)
// 2 = probe is distractor (was not part of sentence)
<list aprobetype>
/ items = (1,1,1,1,0,0,0,0)
/ selectionmode = list.aprobe.currentindex
</list>

// probes pertaining to sentence B are items 9 to 16
<list bprobe>
/ items = (9,10,11,12,13,14,15,16)
</list>

<list bprobetype>
/ items = (1,1,1,1,0,0,0,0)
/ selectionmode = list.bprobe.currentindex
</list>

// probes pertaining to sentence C are items 17 to 24
<list cprobe>
/ items = (17,18,19,20,21,22,23,24)
</list>

<list cprobetype>
/ items = (1,1,1,1,0,0,0,0)
/ selectionmode = list.cprobe.currentindex
</list>

// probes pertaining to sentence D are items 25 to 32
<list dprobe>
/ items = (25,26,27,28,29,30,31,32)
</list>

<list dprobetype>
/ items = (1,1,1,1,0,0,0,0)
/ selectionmode = list.dprobe.currentindex
</list>

<item wordprobeitems>
/ 1 = "A Target 1"
/ 2 = "A Target 2"
/ 3 = "A Target 3"
/ 4 = "A Target 4"
/ 5 = "A Distractor 1"
/ 6 = "A Distractor 2"
/ 7 = "A Distractor 3"
/ 8 = "A Distractor 4"

/ 9 = "B Target 1"
/ 10 = "B Target 2"
/ 11 = "B Target 3"
/ 12 = "B Target 4"
/ 13 = "B Distractor 1"
/ 14 = "B Distractor 2"
/ 15 = "B Distractor 3"
/ 16 = "B Distractor 4"

/ 17 = "C Target 1"
/ 18 = "C Target 2"
/ 19 = "C Target 3"
/ 20 = "C Target 4"
/ 21 = "C Distractor 1"
/ 22 = "C Distractor 2"
/ 23 = "C Distractor 3"
/ 24 = "C Distractor 4"

/ 25 = "D Target 1"
/ 26 = "D Target 2"
/ 27 = "D Target 3"
/ 28 = "D Target 4"
/ 29 = "D Distractor 1"
/ 30 = "D Distractor 2"
/ 31 = "D Distractor 3"
/ 32 = "D Distractor 4"
</item>

<text wordprobe>
/ items = wordprobeitems
/ select = values.probenumber
</text>


Oh, it worked perfectly.
I only added the picture as stimuli and it worked!

thank you very much!
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search