|
Post by morteza on Jun 13, 2020 11:31:50 GMT
Hello, I'm trying to design a symbol-span task using the "Choose" function. After the participants look at a number of symbols on the first page, they should choose symbols they've just seen, from multiple other bitmaps on the next page. But it seems that "Choose" function records the chosen bitmaps based on numerical order from low to high by default (CHOSEN_1,CHOSEN_2, CHOSEN_3...) and the correct order by which the participant has responded is ignored and STATUS is always set to zero. My question is that is there any way to record the order of the bitmaps as they are selected by the participant (not as the default numerical order) and also record the value of STATUS (1 or 2) using choose function?
|
|
|
Post by alexandra (AEC) on Jun 15, 2020 9:23:17 GMT
Hi there,
if you look at the lesson to the choose function (https://www.psytoolkit.org/lessons/choose.html) and have a look at the table you will see that the first three numbers are always in increasing order. The check of correctness would not work if the variables CHOSEN_1 etc. would not save the bitmap numbers in increasing bitmap number order. I guess one way would be to show the bitmaps to choose from in "increasing order" in the correct order as you define it between the other available bitmaps and then check if this is correct by adding the correct bitmap numbers to your table that is read for the task and comparing those to the chose bitmap number like it is done in the lesson.
I am not sure if this will work, but you might want to try to use readmouse repeatedly for the amount of times you want your participants to choose an image. It is not as elegant as the choose function but you can save a variable after each readmouse for the bitmap number chosen to get the order in which participants chose. For example
readmouse l 2 60000 range 3 12 # the range of bitmap numbers you want participants to choose from set $bitnumber bitmap-under-mouse MOUSE_X MOUSE_Y range 3 12 # which bitmap number was chosen by participants set $firstchoice $bitnumber # make a variable for each choice
After the selection is completed you could then check if the responses were correct to a similar way as in the lesson by comparing to numbers in your table. You might need some if loops here. At the end you then could save the variable in the order of chosen bitmaps $firstchoice etc. including the variable of correct or incorrect response.
The choose option nicely shows which bitmap was chosen, which you would not have with readmouse. A way to get around this is to show a frame around an image you would have to create yourself first and then find the place of the chosen image to show the frame. For example
if $bitnumber == 12 show bitmap blueframe -300 200 # you would have to repeat this for all your images, which might be quite long. fi
Another option is to just show a dot or someting you created on the chosen image instead after an image was selected:
show bitmap yellowdot MOUSE_X MOUSE_Y #
A major downside of the described alternative is that participants cannot undo the selection, which is possible with the choose function.
|
|
|
Post by morteza on Jun 15, 2020 12:45:29 GMT
Hi, Thank you for your suggestion...At first i tried to use readmouse instead of choose function (for example readmouse l 2 100000 range 4 6) but since it was not possible for participants to undo their response, finally i decided to use "readkeys" function so that participants could respond by pressing specific keys instead of using the mouse. For example, in the first page participants look at a bitmap with 2 symbols printed on for 5000 ms (they should try to memorize them from left to right) and then after 1000 ms delay, another bitmap with 4 symbols appears on the screen (each symbol in the second page has a special label, starting from A, in this case A,B,C,D) and participants should type the letters of the correct symbols. Using this method, i could save both the STATUS and the order of the responses (which symbol labels are selected and if they are selected in the left to right order or not) and participants could undo their responses whenever they type in a wrong letter.
Here is an example of the first block:
task block_1 # first trial show bitmap b1 # bitmap with 2 symbol printed on delay 5000 clear -1 delay 1000 show bitmap b3 # bitmap with 4 symbols (symbols are labelled from A to D) text color 0 255 0 readkeys option size 14 readkeys option show -120 -300 readkeys "DB" 9000000 # participant should type the letters D and B (labels of the correct symbols) clear screen save WORD STATUS RT # the letters entered by the participants and STATUS and reaction time are saved (saving WORD enables me to see from the data table if the participant has remembered the symbols from left to right or not, so that i can give a score of 2 or 1 to that response) part STATUS delay 2000 # second trial show bitmap b4 # bitmap with 2 symbols printed on delay 5000 clear -1 delay 1000 show bitmap b6 # bitmaps with 4 labelled symbols (A,B,C,D) text color 0 255 0 readkeys option size 14 readkeys option show -120 -300 readkeys "AC" 9000000 #type in the letters A and C clear screen save WORD STATUS RT part condition delay 2000
|
|
|
Post by alexandra (AEC) on Jun 15, 2020 15:41:16 GMT
Great to hear you found a solution to your problem. Thank you for sharing!
|
|