By dimitri_VR - 6/26/2017
I am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance
|
By Dave - 6/26/2017
+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach.
|
By dimitri_VR - 6/26/2017
+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave,
thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)?
kind regards
|
By Dave - 6/26/2017
+x+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave, thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)? kind regards It would work exactly the same. You put the <slider> on a <surveypage>. You run that page via a <block>'s /trials. You sort responses into the respective bins based on the <slider>'s response property instead of a <likert>'s.
|
By dimitri_VR - 6/26/2017
+x+x+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave, thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)? kind regards It would work exactly the same. You put the <slider> on a <surveypage>. You run that page via a <block>'s /trials. You sort responses into the respective bins based on the <slider>'s response property instead of a <likert>'s. thank you, I'll try to work it out!
|
By Dave - 6/26/2017
+x+x+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave, thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)? kind regards It would work exactly the same. You put the <slider> on a <surveypage>. You run that page via a <block>'s /trials. You sort responses into the respective bins based on the <slider>'s response property instead of a <likert>'s. Here's the example from https://www.millisecond.com/forums/Topic20721.aspx#bm20743 adapted to <slider>s instead of <likert> elements:
<block myblock> / trials = [1-12=noreplace(female_page, male_page); 13=ratingresults; 14-15=select_females_high; 16-17=select_females_low; 18-19=select_males_high; 20-21=select_males_low;] / postinstructions = (selectionresults) </block>
<surveypage female_page> / ontrialend = [if(slider.female_slider.response=="1")item.female_r1.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="2")item.female_r2.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="3")item.female_r3.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="4")item.female_r4.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="5")item.female_r5.item=text.female.currentitem] / stimulusframes = [1=female,debug] / questions = [1=female_slider] </surveypage>
<slider female_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider>
<text female> / items = femaleitems / position = (50%, 60%) </text>
<item femaleitems> / 1 = "Female A" / 2 = "Female B" / 3 = "Female C" / 4 = "Female D" / 5 = "Female E" / 6 = "Female F" </item>
<surveypage male_page> / ontrialend = [if(slider.male_slider.response=="1")item.male_r1.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="2")item.male_r2.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="3")item.male_r3.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="4")item.male_r4.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="5")item.male_r5.item=text.male.currentitem] / stimulusframes = [1=male,debug] / questions = [1=male_slider] </surveypage>
<slider male_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider>
<text male> / items = maleitems / position = (50%, 60%) </text>
<item maleitems> / 1 = "Male A" / 2 = "Male B" / 3 = "Male C" / 4 = "Male D" / 5 = "Male E" / 6 = "Male F" </item>
<text debug> / items = ("Female rating results: R1=<%item.female_r1.itemcount%>|R2=<%item.female_r2.itemcount%>|R3=<%item.female_r3.itemcount%>|R4=<%item.female_r4.itemcount%>|R5=<%item.female_r5.itemcount%> Male rating results: R1=<%item.male_r1.itemcount%>|R2=<%item.male_r2.itemcount%>|R3=<%item.male_r3.itemcount%>|R4=<%item.male_r4.itemcount%>|R5=<%item.male_r5.itemcount%> ") / size = (90%, 30%) / position = (50%, 30%) / erase = false </text>
<item female_r1> </item>
<item female_r2> </item>
<item female_r3> </item>
<item female_r4> </item>
<item female_r5> </item>
<item male_r1> </item>
<item male_r2> </item>
<item male_r3> </item>
<item male_r4> </item>
<item male_r5> </item>
<trial ratingresults> / stimulusframes = [1=debug] / validresponse = (57) / timeout = 5000 </trial>
<trial select_females_high> / ontrialbegin = [if (item.female_r5.itemcount > 0) {item.high.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.high.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.high.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.high.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r1.itemcount > 0) {item.high.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);}; ] / trialduration = 0 </trial>
<trial select_females_low> / ontrialbegin = [if (item.female_r1.itemcount > 0) {item.low.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.low.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.low.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.low.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r5.itemcount > 0) {item.low.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);}; ] / trialduration = 0 </trial>
<trial select_males_high> / ontrialbegin = [if (item.male_r5.itemcount > 0) {item.high.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.high.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.high.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.high.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r1.itemcount > 0) {item.high.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);}; ] / trialduration = 0 </trial>
<trial select_males_low> / ontrialbegin = [if (item.male_r1.itemcount > 0) {item.low.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.low.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.low.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.low.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r5.itemcount > 0) {item.low.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);}; ] / trialduration = 0 </trial>
<item high> </item>
<item low> </item>
<page selectionresults> ^'High' item set (<%item.high.itemcount%> items): ^<%item.high.item(1)%>, <%item.high.item(2)%>, <%item.high.item(3)%>, <%item.high.item(4)%> ^^ ^'Low' item set (<%item.low.itemcount%> items): ^<%item.low.item(1)%>, <%item.low.item(2)%>, <%item.low.item(3)%>, <%item.low.item(4)%> </page>
|
By dimitri_VR - 6/26/2017
+x+x+x+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave, thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)? kind regards It would work exactly the same. You put the <slider> on a <surveypage>. You run that page via a <block>'s /trials. You sort responses into the respective bins based on the <slider>'s response property instead of a <likert>'s. Here's the example from https://www.millisecond.com/forums/Topic20721.aspx#bm20743 adapted to <slider>s instead of <likert> elements: <block myblock> / trials = [1-12=noreplace(female_page, male_page); 13=ratingresults; 14-15=select_females_high; 16-17=select_females_low; 18-19=select_males_high; 20-21=select_males_low;] / postinstructions = (selectionresults) </block> <surveypage female_page> / ontrialend = [if(slider.female_slider.response=="1")item.female_r1.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="2")item.female_r2.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="3")item.female_r3.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="4")item.female_r4.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="5")item.female_r5.item=text.female.currentitem] / stimulusframes = [1=female,debug] / questions = [1=female_slider] </surveypage> <slider female_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text female> / items = femaleitems / position = (50%, 60%) </text> <item femaleitems> / 1 = "Female A" / 2 = "Female B" / 3 = "Female C" / 4 = "Female D" / 5 = "Female E" / 6 = "Female F" </item> <surveypage male_page> / ontrialend = [if(slider.male_slider.response=="1")item.male_r1.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="2")item.male_r2.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="3")item.male_r3.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="4")item.male_r4.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="5")item.male_r5.item=text.male.currentitem] / stimulusframes = [1=male,debug] / questions = [1=male_slider] </surveypage> <slider male_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text male> / items = maleitems / position = (50%, 60%) </text> <item maleitems> / 1 = "Male A" / 2 = "Male B" / 3 = "Male C" / 4 = "Male D" / 5 = "Male E" / 6 = "Male F" </item> <text debug> / items = ("Female rating results: R1=<%item.female_r1.itemcount%>|R2=<%item.female_r2.itemcount%>|R3=<%item.female_r3.itemcount%>|R4=<%item.female_r4.itemcount%>|R5=<%item.female_r5.itemcount%> Male rating results: R1=<%item.male_r1.itemcount%>|R2=<%item.male_r2.itemcount%>|R3=<%item.male_r3.itemcount%>|R4=<%item.male_r4.itemcount%>|R5=<%item.male_r5.itemcount%> ") / size = (90%, 30%) / position = (50%, 30%) / erase = false </text> <item female_r1> </item> <item female_r2> </item> <item female_r3> </item> <item female_r4> </item> <item female_r5> </item> <item male_r1> </item> <item male_r2> </item> <item male_r3> </item> <item male_r4> </item> <item male_r5> </item> <trial ratingresults> / stimulusframes = [1=debug] / validresponse = (57) / timeout = 5000 </trial> <trial select_females_high> / ontrialbegin = [if (item.female_r5.itemcount > 0) {item.high.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.high.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.high.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.high.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r1.itemcount > 0) {item.high.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_females_low> / ontrialbegin = [if (item.female_r1.itemcount > 0) {item.low.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.low.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.low.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.low.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r5.itemcount > 0) {item.low.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_high> / ontrialbegin = [if (item.male_r5.itemcount > 0) {item.high.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.high.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.high.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.high.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r1.itemcount > 0) {item.high.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_low> / ontrialbegin = [if (item.male_r1.itemcount > 0) {item.low.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.low.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.low.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.low.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r5.itemcount > 0) {item.low.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);}; ] / trialduration = 0 </trial> <item high> </item> <item low> </item> <page selectionresults> ^'High' item set (<%item.high.itemcount%> items): ^<%item.high.item(1)%>, <%item.high.item(2)%>, <%item.high.item(3)%>, <%item.high.item(4)%> ^^ ^'Low' item set (<%item.low.itemcount%> items): ^<%item.low.item(1)%>, <%item.low.item(2)%>, <%item.low.item(3)%>, <%item.low.item(4)%> </page> Hi, this great! I have completely adapted the script and it works fine to report which 4 receive the highest and which 4 receive the lowest values. However how can I automatically get these in the second part of the experiment? Here I want participants to perform a reaction time task using these particular pictures. I guess I can not just replace
<item targetB.item> /1 = "Bad 1" /2 = "Bad 2" /3 = "Bad 3" /4 = "Bad 4" </item>
<picture targetA.text> / items = targetA.item / fontstyle = ("Arial", 6%, true) / position = (50%, 50%) /select = noreplacenorepeat </picture>
thanks for all your help here
to show the highest and lowest
|
By Dave - 6/27/2017
+x+x+x+x+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave, thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)? kind regards It would work exactly the same. You put the <slider> on a <surveypage>. You run that page via a <block>'s /trials. You sort responses into the respective bins based on the <slider>'s response property instead of a <likert>'s. Here's the example from https://www.millisecond.com/forums/Topic20721.aspx#bm20743 adapted to <slider>s instead of <likert> elements: <block myblock> / trials = [1-12=noreplace(female_page, male_page); 13=ratingresults; 14-15=select_females_high; 16-17=select_females_low; 18-19=select_males_high; 20-21=select_males_low;] / postinstructions = (selectionresults) </block> <surveypage female_page> / ontrialend = [if(slider.female_slider.response=="1")item.female_r1.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="2")item.female_r2.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="3")item.female_r3.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="4")item.female_r4.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="5")item.female_r5.item=text.female.currentitem] / stimulusframes = [1=female,debug] / questions = [1=female_slider] </surveypage> <slider female_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text female> / items = femaleitems / position = (50%, 60%) </text> <item femaleitems> / 1 = "Female A" / 2 = "Female B" / 3 = "Female C" / 4 = "Female D" / 5 = "Female E" / 6 = "Female F" </item> <surveypage male_page> / ontrialend = [if(slider.male_slider.response=="1")item.male_r1.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="2")item.male_r2.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="3")item.male_r3.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="4")item.male_r4.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="5")item.male_r5.item=text.male.currentitem] / stimulusframes = [1=male,debug] / questions = [1=male_slider] </surveypage> <slider male_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text male> / items = maleitems / position = (50%, 60%) </text> <item maleitems> / 1 = "Male A" / 2 = "Male B" / 3 = "Male C" / 4 = "Male D" / 5 = "Male E" / 6 = "Male F" </item> <text debug> / items = ("Female rating results: R1=<%item.female_r1.itemcount%>|R2=<%item.female_r2.itemcount%>|R3=<%item.female_r3.itemcount%>|R4=<%item.female_r4.itemcount%>|R5=<%item.female_r5.itemcount%> Male rating results: R1=<%item.male_r1.itemcount%>|R2=<%item.male_r2.itemcount%>|R3=<%item.male_r3.itemcount%>|R4=<%item.male_r4.itemcount%>|R5=<%item.male_r5.itemcount%> ") / size = (90%, 30%) / position = (50%, 30%) / erase = false </text> <item female_r1> </item> <item female_r2> </item> <item female_r3> </item> <item female_r4> </item> <item female_r5> </item> <item male_r1> </item> <item male_r2> </item> <item male_r3> </item> <item male_r4> </item> <item male_r5> </item> <trial ratingresults> / stimulusframes = [1=debug] / validresponse = (57) / timeout = 5000 </trial> <trial select_females_high> / ontrialbegin = [if (item.female_r5.itemcount > 0) {item.high.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.high.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.high.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.high.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r1.itemcount > 0) {item.high.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_females_low> / ontrialbegin = [if (item.female_r1.itemcount > 0) {item.low.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.low.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.low.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.low.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r5.itemcount > 0) {item.low.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_high> / ontrialbegin = [if (item.male_r5.itemcount > 0) {item.high.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.high.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.high.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.high.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r1.itemcount > 0) {item.high.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_low> / ontrialbegin = [if (item.male_r1.itemcount > 0) {item.low.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.low.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.low.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.low.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r5.itemcount > 0) {item.low.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);}; ] / trialduration = 0 </trial> <item high> </item> <item low> </item> <page selectionresults> ^'High' item set (<%item.high.itemcount%> items): ^<%item.high.item(1)%>, <%item.high.item(2)%>, <%item.high.item(3)%>, <%item.high.item(4)%> ^^ ^'Low' item set (<%item.low.itemcount%> items): ^<%item.low.item(1)%>, <%item.low.item(2)%>, <%item.low.item(3)%>, <%item.low.item(4)%> </page> Hi, this great! I have completely adapted the script and it works fine to report which 4 receive the highest and which 4 receive the lowest values. However how can I automatically get these in the second part of the experiment? Here I want participants to perform a reaction time task using these particular pictures. I guess I can not just replace <item targetB.item> /1 = "Bad 1" /2 = "Bad 2" /3 = "Bad 3" /4 = "Bad 4" </item> <picture targetA.text> / items = targetA.item / fontstyle = ("Arial", 6%, true) / position = (50%, 50%) /select = noreplacenorepeat </picture> thanks for all your help here to show the highest and lowest The slider script puts the selected items in two <item> elements: <item high> and <item low> in the example. You merely reference / use those <item> elements in your <picture> elements for the 2nd part.
|
By dimitri_VR - 6/27/2017
+x+x+x+x+x+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave, thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)? kind regards It would work exactly the same. You put the <slider> on a <surveypage>. You run that page via a <block>'s /trials. You sort responses into the respective bins based on the <slider>'s response property instead of a <likert>'s. Here's the example from https://www.millisecond.com/forums/Topic20721.aspx#bm20743 adapted to <slider>s instead of <likert> elements: <block myblock> / trials = [1-12=noreplace(female_page, male_page); 13=ratingresults; 14-15=select_females_high; 16-17=select_females_low; 18-19=select_males_high; 20-21=select_males_low;] / postinstructions = (selectionresults) </block> <surveypage female_page> / ontrialend = [if(slider.female_slider.response=="1")item.female_r1.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="2")item.female_r2.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="3")item.female_r3.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="4")item.female_r4.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="5")item.female_r5.item=text.female.currentitem] / stimulusframes = [1=female,debug] / questions = [1=female_slider] </surveypage> <slider female_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text female> / items = femaleitems / position = (50%, 60%) </text> <item femaleitems> / 1 = "Female A" / 2 = "Female B" / 3 = "Female C" / 4 = "Female D" / 5 = "Female E" / 6 = "Female F" </item> <surveypage male_page> / ontrialend = [if(slider.male_slider.response=="1")item.male_r1.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="2")item.male_r2.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="3")item.male_r3.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="4")item.male_r4.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="5")item.male_r5.item=text.male.currentitem] / stimulusframes = [1=male,debug] / questions = [1=male_slider] </surveypage> <slider male_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text male> / items = maleitems / position = (50%, 60%) </text> <item maleitems> / 1 = "Male A" / 2 = "Male B" / 3 = "Male C" / 4 = "Male D" / 5 = "Male E" / 6 = "Male F" </item> <text debug> / items = ("Female rating results: R1=<%item.female_r1.itemcount%>|R2=<%item.female_r2.itemcount%>|R3=<%item.female_r3.itemcount%>|R4=<%item.female_r4.itemcount%>|R5=<%item.female_r5.itemcount%> Male rating results: R1=<%item.male_r1.itemcount%>|R2=<%item.male_r2.itemcount%>|R3=<%item.male_r3.itemcount%>|R4=<%item.male_r4.itemcount%>|R5=<%item.male_r5.itemcount%> ") / size = (90%, 30%) / position = (50%, 30%) / erase = false </text> <item female_r1> </item> <item female_r2> </item> <item female_r3> </item> <item female_r4> </item> <item female_r5> </item> <item male_r1> </item> <item male_r2> </item> <item male_r3> </item> <item male_r4> </item> <item male_r5> </item> <trial ratingresults> / stimulusframes = [1=debug] / validresponse = (57) / timeout = 5000 </trial> <trial select_females_high> / ontrialbegin = [if (item.female_r5.itemcount > 0) {item.high.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.high.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.high.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.high.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r1.itemcount > 0) {item.high.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_females_low> / ontrialbegin = [if (item.female_r1.itemcount > 0) {item.low.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.low.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.low.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.low.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r5.itemcount > 0) {item.low.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_high> / ontrialbegin = [if (item.male_r5.itemcount > 0) {item.high.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.high.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.high.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.high.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r1.itemcount > 0) {item.high.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_low> / ontrialbegin = [if (item.male_r1.itemcount > 0) {item.low.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.low.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.low.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.low.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r5.itemcount > 0) {item.low.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);}; ] / trialduration = 0 </trial> <item high> </item> <item low> </item> <page selectionresults> ^'High' item set (<%item.high.itemcount%> items): ^<%item.high.item(1)%>, <%item.high.item(2)%>, <%item.high.item(3)%>, <%item.high.item(4)%> ^^ ^'Low' item set (<%item.low.itemcount%> items): ^<%item.low.item(1)%>, <%item.low.item(2)%>, <%item.low.item(3)%>, <%item.low.item(4)%> </page> Hi, this great! I have completely adapted the script and it works fine to report which 4 receive the highest and which 4 receive the lowest values. However how can I automatically get these in the second part of the experiment? Here I want participants to perform a reaction time task using these particular pictures. I guess I can not just replace <item targetB.item> /1 = "Bad 1" /2 = "Bad 2" /3 = "Bad 3" /4 = "Bad 4" </item> <picture targetA.text> / items = targetA.item / fontstyle = ("Arial", 6%, true) / position = (50%, 50%) /select = noreplacenorepeat </picture> thanks for all your help here to show the highest and lowest The slider script puts the selected items in two <item> elements: <item high> and <item low> in the example. You merely reference / use those <item> elements in your <picture> elements for the 2nd part. Thanks for your help. I tried to do it this way. however I get sometimes twice the same picture. I am doing something wrong, but don't seem to find it. I would like to see each of the high pictures shown once.
<picture high_intense1> / items = item.high / position = (20, 30) / size = (200,200) / select = noreplace </picture>
<picture high_intense2> / items = item.high / position = (40, 30) / size = (200,200) / select = noreplace </picture>
<picture high_intense3> / items = item.high / position = (60, 30) / size = (200,200) / select = noreplace </picture>
<picture high_intense4> / items = item.high / position = (80, 30) / size = (200,200) / select = noreplace </picture>
<trial test> / stimulustimes = [0= high_intense1, high_intense2, high_intense3, high_intense4] / validresponse = (37) </trial>
|
By Dave - 6/27/2017
+x+x+x+x+x+x+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave, thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)? kind regards It would work exactly the same. You put the <slider> on a <surveypage>. You run that page via a <block>'s /trials. You sort responses into the respective bins based on the <slider>'s response property instead of a <likert>'s. Here's the example from https://www.millisecond.com/forums/Topic20721.aspx#bm20743 adapted to <slider>s instead of <likert> elements: <block myblock> / trials = [1-12=noreplace(female_page, male_page); 13=ratingresults; 14-15=select_females_high; 16-17=select_females_low; 18-19=select_males_high; 20-21=select_males_low;] / postinstructions = (selectionresults) </block> <surveypage female_page> / ontrialend = [if(slider.female_slider.response=="1")item.female_r1.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="2")item.female_r2.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="3")item.female_r3.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="4")item.female_r4.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="5")item.female_r5.item=text.female.currentitem] / stimulusframes = [1=female,debug] / questions = [1=female_slider] </surveypage> <slider female_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text female> / items = femaleitems / position = (50%, 60%) </text> <item femaleitems> / 1 = "Female A" / 2 = "Female B" / 3 = "Female C" / 4 = "Female D" / 5 = "Female E" / 6 = "Female F" </item> <surveypage male_page> / ontrialend = [if(slider.male_slider.response=="1")item.male_r1.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="2")item.male_r2.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="3")item.male_r3.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="4")item.male_r4.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="5")item.male_r5.item=text.male.currentitem] / stimulusframes = [1=male,debug] / questions = [1=male_slider] </surveypage> <slider male_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text male> / items = maleitems / position = (50%, 60%) </text> <item maleitems> / 1 = "Male A" / 2 = "Male B" / 3 = "Male C" / 4 = "Male D" / 5 = "Male E" / 6 = "Male F" </item> <text debug> / items = ("Female rating results: R1=<%item.female_r1.itemcount%>|R2=<%item.female_r2.itemcount%>|R3=<%item.female_r3.itemcount%>|R4=<%item.female_r4.itemcount%>|R5=<%item.female_r5.itemcount%> Male rating results: R1=<%item.male_r1.itemcount%>|R2=<%item.male_r2.itemcount%>|R3=<%item.male_r3.itemcount%>|R4=<%item.male_r4.itemcount%>|R5=<%item.male_r5.itemcount%> ") / size = (90%, 30%) / position = (50%, 30%) / erase = false </text> <item female_r1> </item> <item female_r2> </item> <item female_r3> </item> <item female_r4> </item> <item female_r5> </item> <item male_r1> </item> <item male_r2> </item> <item male_r3> </item> <item male_r4> </item> <item male_r5> </item> <trial ratingresults> / stimulusframes = [1=debug] / validresponse = (57) / timeout = 5000 </trial> <trial select_females_high> / ontrialbegin = [if (item.female_r5.itemcount > 0) {item.high.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.high.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.high.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.high.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r1.itemcount > 0) {item.high.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_females_low> / ontrialbegin = [if (item.female_r1.itemcount > 0) {item.low.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.low.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.low.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.low.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r5.itemcount > 0) {item.low.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_high> / ontrialbegin = [if (item.male_r5.itemcount > 0) {item.high.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.high.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.high.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.high.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r1.itemcount > 0) {item.high.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_low> / ontrialbegin = [if (item.male_r1.itemcount > 0) {item.low.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.low.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.low.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.low.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r5.itemcount > 0) {item.low.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);}; ] / trialduration = 0 </trial> <item high> </item> <item low> </item> <page selectionresults> ^'High' item set (<%item.high.itemcount%> items): ^<%item.high.item(1)%>, <%item.high.item(2)%>, <%item.high.item(3)%>, <%item.high.item(4)%> ^^ ^'Low' item set (<%item.low.itemcount%> items): ^<%item.low.item(1)%>, <%item.low.item(2)%>, <%item.low.item(3)%>, <%item.low.item(4)%> </page> Hi, this great! I have completely adapted the script and it works fine to report which 4 receive the highest and which 4 receive the lowest values. However how can I automatically get these in the second part of the experiment? Here I want participants to perform a reaction time task using these particular pictures. I guess I can not just replace <item targetB.item> /1 = "Bad 1" /2 = "Bad 2" /3 = "Bad 3" /4 = "Bad 4" </item> <picture targetA.text> / items = targetA.item / fontstyle = ("Arial", 6%, true) / position = (50%, 50%) /select = noreplacenorepeat </picture> thanks for all your help here to show the highest and lowest The slider script puts the selected items in two <item> elements: <item high> and <item low> in the example. You merely reference / use those <item> elements in your <picture> elements for the 2nd part. Thanks for your help. I tried to do it this way. however I get sometimes twice the same picture. I am doing something wrong, but don't seem to find it. I would like to see each of the high pictures shown once. <picture high_intense1> / items = item.high / position = (20, 30) / size = (200,200) / select = noreplace </picture> <picture high_intense2> / items = item.high / position = (40, 30) / size = (200,200) / select = noreplace </picture> <picture high_intense3> / items = item.high / position = (60, 30) / size = (200,200) / select = noreplace </picture> <picture high_intense4> / items = item.high / position = (80, 30) / size = (200,200) / select = noreplace </picture> <trial test> / stimulustimes = [0= high_intense1, high_intense2, high_intense3, high_intense4] / validresponse = (37) </trial> You need a <list> in addition if you want all items selected from the same selection pool across multiple <picture> elements:
<picture high_intense1> / items = item.high / position = (20, 30) / size = (200,200) / select = list.fouritems.nextindex </picture>
<picture high_intense2> / items = item.high / position = (40, 30) / size = (200,200) / select = list.fouritems.nextindex </picture>
<picture high_intense3> / items = item.high / position = (60, 30) / size = (200,200) / select = list.fouritems.nextindex </picture>
<picture high_intense4> / items = item.high / position = (80, 30) / size = (200,200) / select = list.fouritems.nextindex </picture>
<list fouritems> / poolsize = 4 / selectionrate = always </list>
<trial test> / stimulustimes = [0= high_intense1, high_intense2, high_intense3, high_intense4] / validresponse = (37) </trial>
|
By dimitri_VR - 6/28/2017
+x+x+x+x+x+x+x+x+xI am currently programming a novel task and wondered whether Inquisit allows to include only the pictures in a experiment that have been given the highest rating in an earlier part of the experiment? To be clear: in part 1 of the experiment people rate 50 pictures upon negative affect using a VAS scale ranging from 0 -100. In the second part of the experiment I would like to use the 5 pictures that have gotten the highest score on negative affect. Can this be done in inquisit? thanks in advance Yes, it can be done, see e.g. https://www.millisecond.com/forums/Topic2644.aspx and https://www.millisecond.com/forums/FindPost20743.aspx for an example of one possible approach. Dear Dave, thanks for your quick reply. I had a look at these solution. I think I more or less understand the idea. However, all of these are made for likert scales. Would you have an example using sliders (ranging from 0 -100)? kind regards It would work exactly the same. You put the <slider> on a <surveypage>. You run that page via a <block>'s /trials. You sort responses into the respective bins based on the <slider>'s response property instead of a <likert>'s. Here's the example from https://www.millisecond.com/forums/Topic20721.aspx#bm20743 adapted to <slider>s instead of <likert> elements: <block myblock> / trials = [1-12=noreplace(female_page, male_page); 13=ratingresults; 14-15=select_females_high; 16-17=select_females_low; 18-19=select_males_high; 20-21=select_males_low;] / postinstructions = (selectionresults) </block> <surveypage female_page> / ontrialend = [if(slider.female_slider.response=="1")item.female_r1.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="2")item.female_r2.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="3")item.female_r3.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="4")item.female_r4.item=text.female.currentitem] / ontrialend = [if(slider.female_slider.response=="5")item.female_r5.item=text.female.currentitem] / stimulusframes = [1=female,debug] / questions = [1=female_slider] </surveypage> <slider female_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text female> / items = femaleitems / position = (50%, 60%) </text> <item femaleitems> / 1 = "Female A" / 2 = "Female B" / 3 = "Female C" / 4 = "Female D" / 5 = "Female E" / 6 = "Female F" </item> <surveypage male_page> / ontrialend = [if(slider.male_slider.response=="1")item.male_r1.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="2")item.male_r2.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="3")item.male_r3.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="4")item.male_r4.item=text.male.currentitem] / ontrialend = [if(slider.male_slider.response=="5")item.male_r5.item=text.male.currentitem] / stimulusframes = [1=male,debug] / questions = [1=male_slider] </surveypage> <slider male_slider> / range = (1,5) / slidersize = (50%, 10%) / position = (25%, 80%) </slider> <text male> / items = maleitems / position = (50%, 60%) </text> <item maleitems> / 1 = "Male A" / 2 = "Male B" / 3 = "Male C" / 4 = "Male D" / 5 = "Male E" / 6 = "Male F" </item> <text debug> / items = ("Female rating results: R1=<%item.female_r1.itemcount%>|R2=<%item.female_r2.itemcount%>|R3=<%item.female_r3.itemcount%>|R4=<%item.female_r4.itemcount%>|R5=<%item.female_r5.itemcount%> Male rating results: R1=<%item.male_r1.itemcount%>|R2=<%item.male_r2.itemcount%>|R3=<%item.male_r3.itemcount%>|R4=<%item.male_r4.itemcount%>|R5=<%item.male_r5.itemcount%> ") / size = (90%, 30%) / position = (50%, 30%) / erase = false </text> <item female_r1> </item> <item female_r2> </item> <item female_r3> </item> <item female_r4> </item> <item female_r5> </item> <item male_r1> </item> <item male_r2> </item> <item male_r3> </item> <item male_r4> </item> <item male_r5> </item> <trial ratingresults> / stimulusframes = [1=debug] / validresponse = (57) / timeout = 5000 </trial> <trial select_females_high> / ontrialbegin = [if (item.female_r5.itemcount > 0) {item.high.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.high.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.high.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.high.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r1.itemcount > 0) {item.high.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_females_low> / ontrialbegin = [if (item.female_r1.itemcount > 0) {item.low.appenditem(item.female_r1.item(1)); item.female_r1.removeitem(1);} else if (item.female_r2.itemcount > 0) {item.low.appenditem(item.female_r2.item(1)); item.female_r2.removeitem(1);} else if (item.female_r3.itemcount > 0) {item.low.appenditem(item.female_r3.item(1)); item.female_r3.removeitem(1);} else if (item.female_r4.itemcount > 0) {item.low.appenditem(item.female_r4.item(1)); item.female_r4.removeitem(1);} else if (item.female_r5.itemcount > 0) {item.low.appenditem(item.female_r5.item(1)); item.female_r5.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_high> / ontrialbegin = [if (item.male_r5.itemcount > 0) {item.high.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.high.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.high.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.high.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r1.itemcount > 0) {item.high.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);}; ] / trialduration = 0 </trial> <trial select_males_low> / ontrialbegin = [if (item.male_r1.itemcount > 0) {item.low.appenditem(item.male_r1.item(1)); item.male_r1.removeitem(1);} else if (item.male_r2.itemcount > 0) {item.low.appenditem(item.male_r2.item(1)); item.male_r2.removeitem(1);} else if (item.male_r3.itemcount > 0) {item.low.appenditem(item.male_r3.item(1)); item.male_r3.removeitem(1);} else if (item.male_r4.itemcount > 0) {item.low.appenditem(item.male_r4.item(1)); item.male_r4.removeitem(1);} else if (item.male_r5.itemcount > 0) {item.low.appenditem(item.male_r5.item(1)); item.male_r5.removeitem(1);}; ] / trialduration = 0 </trial> <item high> </item> <item low> </item> <page selectionresults> ^'High' item set (<%item.high.itemcount%> items): ^<%item.high.item(1)%>, <%item.high.item(2)%>, <%item.high.item(3)%>, <%item.high.item(4)%> ^^ ^'Low' item set (<%item.low.itemcount%> items): ^<%item.low.item(1)%>, <%item.low.item(2)%>, <%item.low.item(3)%>, <%item.low.item(4)%> </page> Hi, this great! I have completely adapted the script and it works fine to report which 4 receive the highest and which 4 receive the lowest values. However how can I automatically get these in the second part of the experiment? Here I want participants to perform a reaction time task using these particular pictures. I guess I can not just replace <item targetB.item> /1 = "Bad 1" /2 = "Bad 2" /3 = "Bad 3" /4 = "Bad 4" </item> <picture targetA.text> / items = targetA.item / fontstyle = ("Arial", 6%, true) / position = (50%, 50%) /select = noreplacenorepeat </picture> thanks for all your help here to show the highest and lowest The slider script puts the selected items in two <item> elements: <item high> and <item low> in the example. You merely reference / use those <item> elements in your <picture> elements for the 2nd part. Thanks for your help. I tried to do it this way. however I get sometimes twice the same picture. I am doing something wrong, but don't seem to find it. I would like to see each of the high pictures shown once. <picture high_intense1> / items = item.high / position = (20, 30) / size = (200,200) / select = noreplace </picture> <picture high_intense2> / items = item.high / position = (40, 30) / size = (200,200) / select = noreplace </picture> <picture high_intense3> / items = item.high / position = (60, 30) / size = (200,200) / select = noreplace </picture> <picture high_intense4> / items = item.high / position = (80, 30) / size = (200,200) / select = noreplace </picture> <trial test> / stimulustimes = [0= high_intense1, high_intense2, high_intense3, high_intense4] / validresponse = (37) </trial> You need a <list> in addition if you want all items selected from the same selection pool across multiple <picture> elements: <picture high_intense1> / items = item.high / position = (20, 30) / size = (200,200) / select = list.fouritems.nextindex </picture> <picture high_intense2> / items = item.high / position = (40, 30) / size = (200,200) / select = list.fouritems.nextindex </picture> <picture high_intense3> / items = item.high / position = (60, 30) / size = (200,200) / select = list.fouritems.nextindex </picture> <picture high_intense4> / items = item.high / position = (80, 30) / size = (200,200) / select = list.fouritems.nextindex </picture> <list fouritems> / poolsize = 4 / selectionrate = always </list> <trial test> / stimulustimes = [0= high_intense1, high_intense2, high_intense3, high_intense4] / validresponse = (37) </trial> thanks!
|
|