SART task problem

Hello!
I am having an issue with a SART task that I built and ran online. After going through a test run with a handful of people, I encountered these issues and would love some advice!
There are consistently high omission error counts with the exact same spread across participant’s data

trial 2 always had 56, trial 3 had 40, trial 4 had 48, trial 5 had 32, and trial 1 varied - this is true across all participants for all sessions

Dear Mitchell

Thank you for the error description. But we need to see the relevant parts of your experiment in order to help you further. The systematicity suggests a programming error.

Best wishes Jens

(attachments)


There is also an issue with random missing reaction times as well in the data and a couple instances where there are two responses recorded for a single question.

Hello Mitchell

You have posted the same code component twice. Did you do this on purpose? Was there something else you wanted to post?

You show us how you compute commission and ommission errors. How do they relate to a trial? Do you just run the code component each time? I do not see how this code relates to the consistently high number of ommission errors in trial 2. So what is different in trial 2 from trial 3?

You could simplify your code a bit.

commission_error = 0
ommission_error = 0

if int(thisNum) == 3 and response.clicked_name[0] == "But ...":
    commission_error = 1
elif int(thisNum) != 3 and response.clicked_name[0] != "But ...":
    ommission_error = 1

Then save the errors to your data file.

You are using the Builder, aren’t you. So why are you recording the RT with trials.addData()? The RT should be recorded automatically?

Best wishes Jens

Sorry, no. I meant to send these as well.
These photos show how the code component is used.

Sorry, no. I meant to send these as well.
These photos show how the code component is used.

(attachments)


Hello Mitchell

Your experiment reads thisNum from your condition file number_list.xlsx, which you repeat seven times. This results in 63 trials.

To investigate your problem I would first add some print commands to code_data.

print("thisNum: ", thisNum)
print("response.clicked: ", response.clicked_name[0])

to check whether your if-condition is true or false as intended. You could also add a print-command to the if-condition

if int(thisNum) == 3 and response.clicked_name[0] == "But ...":
    commission_error = 1
    print("commission_error")
elif int(thisNum) != 3 and response.clicked_name[0] != "But ...":
    ommission_error = 1
    print("commission_error")

You can monitor the output in the Runner window. This should give some insight into why there is an accumulation of errors in some trials.

By the way, you seem to be copying a routine trial, trial2, trial3. Is this correct? Are trial, trial2 and trial3 identical and different only in stimuli or instruction? Reusing a routine makes debugging easier. Rather iterate over a list of condition files than copy routines.

Best wishes Jens

I added the code to print, then ran in on the desktop. I was able to go through a few trials but the program terminated after the target stimulus was presented ( number 3). I received this error message.
File “C:\Users\mitch\Desktop\workingSart92.1\SART_lastrun.py”, line 3663, in
run(
File “C:\Users\mitch\Desktop\workingSart92.1\SART_lastrun.py”, line 1564, in run
print("response.clicked: ", response_clicked_name[0])
NameError: name ‘response_clicked_name’ is not defined
################ Experiment ended with exit code 1 [pid:12688] #################

Yes, there are five different trials, each having a different number of repeats in attempts to pseudorandomize. Previously I had been using the counterbalance shelf function but the new version of psychopy seemed to not be able to support that.

The last message only had a partial copy of the error message, here is the full one.
File “C:\Users\mitch\Desktop\workingSart92.1\SART_lastrun.py”, line 3663, in
run(
File “C:\Users\mitch\Desktop\workingSart92.1\SART_lastrun.py”, line 1564, in run
print("response.clicked: ", response_clicked_name[0])
NameError: name ‘response_clicked_name’ is not defined
################ Experiment ended with exit code 1 [pid:12688] #################
Alert 4705: Column name ‘thisNum’ in conditions file already exists as a variable in this experiment (user).
For more info see https://docs.psychopy.org/alerts/4705.htmlAlert 4710: Column name ‘thisNum’ is likely to cause name clashes. Avoid this, these, continue, Clock, or component in name.
For more info see https://docs.psychopy.org/alerts/4710.html

Hello Mitchell

You probably have a typo. Isn’t it called response.clicked_name and not response_clicked_name?

1 Like

Im sending this again because I received a posting error and am not sure if you received it. Ive pasted a small chunk of the response of the builder. Ive fixed that and ran through the desktop version from builder and got this in runner after the program went all the way through. Im not exactly sure what I should be looking for to find the bug.

Hello from the pygame community. https://www.pygame.org/contribute.html
commission_error
thisNum: 3
response.clicked: Button
commission_error
thisNum: 3
response.clicked: Button
commission_error
thisNum: 3
response.clicked: Button
commission_error
thisNum: 3
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 5
response.clicked: Button
commission_error
thisNum: 7
response.clicked: Button
commission_error
thisNum: 4
response.clicked: Button
commission_error
thisNum: 1
response.clicked: Button
commission_error
thisNum: 9
response.clicked: Button
commission_error
thisNum: 6
response.clicked: Button
commission_error
thisNum: 8
response.clicked: Button
commission_error
thisNum: 2
response.clicked: Button
14.7862 DEBUG Fullscreen settings ignored as running in pilot mode.
14.7880 INFO Loaded monitor calibration from [‘2024_03_21 17:54’]
16.0402 EXP Created window1 = Window(allowGUI=True, allowStencil=False, autoLog=True, backendConf=UNKNOWN, backgroundFit=<method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2D60>, backgroundImage=<method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2D00>, bitsMode=UNKNOWN, blendMode=‘avg’, bpc=(8, 8, 8), color=array([0, 0, 0]), colorSpace=‘rgb’, depthBits=8, fullscr=<method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2B20>, gamma=None, gammaErrorPolicy=‘raise’, infoMsg=UNKNOWN, lms=UNKNOWN, monitor=<psychopy.monitors.calibTools.Monitor object at 0x00000180025ADC70>, multiSample=False, name=‘window1’, numSamples=2, pos=[560.0, 240.0], screen=0, size=array([800, 600]), stencilBits=0, stereo=False, title=‘PsychoPy’, units=‘height’, useFBO=True, useRetina=False, viewOri=0.0, viewPos=None, viewScale=None, waitBlanking=True, winType=‘pyglet’)
16.0403 EXP window1: backgroundImage = ‘’
16.0403 EXP window1: backgroundFit = ‘none’
16.0418 EXP window1: mouseVisible = <method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2E80>
16.0444 EXP window1: mouseVisible = <method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2E80>
16.0509 EXP window1: mouseVisible = <method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2E80>
16.0520 EXP window1: mouseVisible = <method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2E80>
16.0862 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.0882 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.0904 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.0927 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.0949 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.0997 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1068 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1111 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1130 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1152 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1170 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1188 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1205 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1236 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1258 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1290 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1325 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1357 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1375 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1399 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1421 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1445 DEBUG Uploading Texture Font fontname to graphics card
16.1573 DEBUG Upload of Texture Font fontname complete
16.1619 EXP window1: mouseVisible = <method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2E80>
16.1651 EXP window1: mouseVisible = <method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2E80>
16.1695 EXP window1: mouseVisible = <method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2E80>
16.1708 EXP window1: mouseVisible = <method-wrapper ‘getattribute’ of attributeSetter object at 0x00000180020D2E80>
16.1901 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1930 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1971 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
16.1983 DEBUG Uploading Texture Font fontname to graphics card
16.2070 DEBUG Upload of Texture Font fontname complete
16.2113 EXP window1: Attempting to measure frame rate of screen (0) …
16.2115 EXP window1: recordFrameIntervals = False
16.5081 EXP window1: recordFrameIntervals = True
16.8278 WARNING t of last frame was 20.13ms (=1/49)
17.1777 WARNING t of last frame was 20.26ms (=1/49)
17.9953 WARNING t of last frame was 20.66ms (=1/48)
18.1780 EXP Screen (0) actual frame rate measured at 59.18Hz
18.1780 EXP window1: recordFrameIntervals = False
18.1792 EXP window1: mouseVisible = True
18.1802 EXP window1: mouseVisible = True
18.1812 EXP window1: mouseVisible = True
18.1828 EXP window1: mouseVisible = True
18.1852 EXP window1: mouseVisible = True
18.1996 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2015 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2035 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2060 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2085 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2108 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2124 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2145 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2168 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2189 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
18.2193 DEBUG Uploading Texture Font fontname to graphics card
18.2232 DEBUG Upload of Texture Font fontname complete
18.2253 EXP window1: mouseVisible = True
18.2266 EXP window1: mouseVisible = True
18.2277 EXP window1: mouseVisible = True
18.2287 EXP window1: mouseVisible = True
18.2844 WARNING launchHubServer: If using the iohub mouse or eyetracker devices, fullScr should be True.
21.6155 INFO keyboard.Keyboard is using iohub backend.
21.6156 EXP SART: status = STARTED
21.6158 EXP window1: mouseVisible = True
21.7958 EXP Created instructions_text = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([-1., -1., -1.]), colorSpace=‘rgb’, contrast=1.0, depth=0.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Arial’, fontFiles=, height=0.03, italic=False, languageStyle=‘LTR’, name=‘instructions_text’, opacity=1.0, ori=0, pos=array([0. , 0.2]), rgb=UNKNOWN, text=str(…), units=‘height’, win=Window(…), wrapWidth=1)
21.7960 EXP window1: mouseVisible = True
21.7993 EXP Created startButton = ShapeStim(class=<class ‘psychopy.visual.shape.ShapeStim’>, anchor=(‘center’, ‘center’), autoDraw=False, autoLog=True, closeShape=True, color=method-wrapper(…), colorSpace=‘rgb’, contrast=None, depth=-1.0, draggable=False, fillColor=array([0, 1, 0]), fillColorSpace=‘rgb’, fillRGB=array([0, 1, 0]), interpolate=True, lineColor=array([1., 1., 1.]), lineColorSpace=‘rgb’, lineRGB=array([1, 1, 1]), lineWidth=1, name=‘startButton’, opacity=1.0, ori=0.0, pos=array([ 0. , -0.3]), size=array([0.2, 0.2]), units=‘height’, vertices=ndarray(…), win=Window(…), windingRule=None)
21.7994 EXP window1: mouseVisible = True
21.8034 EXP Created startTxt = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([-1., -1., -1.]), colorSpace=‘rgb’, contrast=1.0, depth=-2.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Arial’, fontFiles=, height=0.03, italic=False, languageStyle=‘LTR’, name=‘startTxt’, opacity=1.0, ori=0, pos=array([ 0. , -0.3]), rgb=UNKNOWN, text=‘Click here\n to start!’, units=‘height’, win=Window(…), wrapWidth=1)
21.8035 EXP window1: mouseVisible = True
21.8114 EXP Created text = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([1., 1., 1.]), colorSpace=‘rgb’, contrast=1.0, depth=0.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Open Sans’, fontFiles=, height=0.05, italic=False, languageStyle=‘LTR’, name=‘text’, opacity=1.0, ori=0.0, pos=array([0., 0.]), rgb=UNKNOWN, text=‘Task will begin in…’, units=‘height’, win=Window(…), wrapWidth=1)
21.8117 EXP window1: mouseVisible = True
21.8144 EXP Created text_2 = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([1., 1., 1.]), colorSpace=‘rgb’, contrast=1.0, depth=-1.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Open Sans’, fontFiles=, height=0.05, italic=False, languageStyle=‘LTR’, name=‘text_2’, opacity=1.0, ori=0.0, pos=array([0., 0.]), rgb=UNKNOWN, text=‘3’, units=‘height’, win=Window(…), wrapWidth=1)
21.8145 EXP window1: mouseVisible = True
21.8174 EXP Created text_3 = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([1., 1., 1.]), colorSpace=‘rgb’, contrast=1.0, depth=-2.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Open Sans’, fontFiles=, height=0.05, italic=False, languageStyle=‘LTR’, name=‘text_3’, opacity=1.0, ori=0.0, pos=array([0., 0.]), rgb=UNKNOWN, text=‘2’, units=‘height’, win=Window(…), wrapWidth=1)
21.8174 EXP window1: mouseVisible = True
21.8203 EXP Created text_4 = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([1., 1., 1.]), colorSpace=‘rgb’, contrast=1.0, depth=-3.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Open Sans’, fontFiles=, height=0.05, italic=False, languageStyle=‘LTR’, name=‘text_4’, opacity=1.0, ori=0.0, pos=array([0., 0.]), rgb=UNKNOWN, text=‘1’, units=‘height’, win=Window(…), wrapWidth=1)
21.8203 EXP window1: mouseVisible = True
21.8249 EXP Created text_5 = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([1., 1., 1.]), colorSpace=‘rgb’, contrast=1.0, depth=-4.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Open Sans’, fontFiles=, height=0.05, italic=False, languageStyle=‘LTR’, name=‘text_5’, opacity=1.0, ori=0.0, pos=array([0., 0.]), rgb=UNKNOWN, text=‘BEGIN’, units=‘height’, win=Window(…), wrapWidth=1)
21.8250 EXP window1: mouseVisible = True
21.8290 EXP Created reminderTxt = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([-1., -1., -1.]), colorSpace=‘rgb’, contrast=1.0, depth=0.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Arial’, fontFiles=, height=0.03, italic=False, languageStyle=‘LTR’, name=‘reminderTxt’, opacity=1.0, ori=0, pos=array([0. , 0.2]), rgb=UNKNOWN, text=str(…), units=‘height’, win=Window(…), wrapWidth=1)
21.8291 EXP window1: mouseVisible = True
21.8320 EXP Created Button_1 = ShapeStim(class=<class ‘psychopy.visual.shape.ShapeStim’>, anchor=(‘center’, ‘center’), autoDraw=False, autoLog=True, closeShape=True, color=method-wrapper(…), colorSpace=‘rgb’, contrast=None, depth=-1.0, draggable=False, fillColor=array([0, 1, 0]), fillColorSpace=‘rgb’, fillRGB=array([0, 1, 0]), interpolate=True, lineColor=array([1., 1., 1.]), lineColorSpace=‘rgb’, lineRGB=array([1, 1, 1]), lineWidth=1, name=‘Button_1’, opacity=1.0, ori=0.0, pos=array([ 0. , -0.3]), size=array([0.2, 0.2]), units=‘height’, vertices=ndarray(…), win=Window(…), windingRule=None)
21.8321 EXP window1: mouseVisible = True
21.8351 EXP Created Button_1_txt = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([-1., -1., -1.]), colorSpace=‘rgb’, contrast=1.0, depth=-2.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Arial’, fontFiles=, height=0.03, italic=False, languageStyle=‘LTR’, name=‘Button_1_txt’, opacity=1.0, ori=0, pos=array([ 0. , -0.3]), rgb=UNKNOWN, text=‘Click here’, units=‘height’, win=Window(…), wrapWidth=1)
21.8352 EXP window1: mouseVisible = True
21.8367 EXP Created numberTxt = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([1., 1., 1.]), colorSpace=‘rgb’, contrast=1.0, depth=0.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Arial’, fontFiles=, height=0.1, italic=False, languageStyle=‘LTR’, name=‘numberTxt’, opacity=1.0, ori=0, pos=array([0., 0.]), rgb=UNKNOWN, text=‘’, units=‘height’, win=Window(…), wrapWidth=1)
21.8368 EXP window1: mouseVisible = True
21.8396 EXP Created Button = ShapeStim(class=<class ‘psychopy.visual.shape.ShapeStim’>, anchor=(‘center’, ‘center’), autoDraw=False, autoLog=True, closeShape=True, color=method-wrapper(…), colorSpace=‘rgb’, contrast=None, depth=-1.0, draggable=False, fillColor=array([0, 1, 0]), fillColorSpace=‘rgb’, fillRGB=array([0, 1, 0]), interpolate=True, lineColor=array([1., 1., 1.]), lineColorSpace=‘rgb’, lineRGB=array([1, 1, 1]), lineWidth=1, name=‘Button’, opacity=1.0, ori=0.0, pos=array([ 0. , -0.3]), size=array([0.2, 0.2]), units=‘height’, vertices=ndarray(…), win=Window(…), windingRule=None)
21.8399 EXP window1: mouseVisible = True
21.8471 EXP Created Button_1_txt_2 = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([-1., -1., -1.]), colorSpace=‘rgb’, contrast=1.0, depth=-2.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Arial’, fontFiles=, height=0.03, italic=False, languageStyle=‘LTR’, name=‘Button_1_txt_2’, opacity=1.0, ori=0, pos=array([ 0. , -0.3]), rgb=UNKNOWN, text=‘Click here’, units=‘height’, win=Window(…), wrapWidth=1)
21.8472 EXP window1: mouseVisible = True
21.8556 EXP Created Procot1 = TextStim(class=<class ‘psychopy.visual.text.TextStim’>, alignHoriz=method-wrapper(…), alignText=‘center’, alignVert=method-wrapper(…), anchorHoriz=‘center’, anchorVert=‘center’, antialias=True, autoDraw=False, autoLog=True, bold=False, color=array([1., 1., 1.]), colorSpace=‘rgb’, contrast=1.0, depth=0.0, draggable=False, flipHoriz=False, flipVert=False, font=‘Open Sans’, fontFiles=, height=0.05, italic=False, languageStyle=‘LTR’, name=‘Procot1’, opacity=1.0, ori=0.0, pos=array([0. , 0.2]), rgb=UNKNOWN, text=str(…), units=‘height’, win=Window(…), wrapWidth=1)
21.8647 EXP window1: mouseVisible = True
21.8689 EXP window1: mouseVisible = True
21.8690 EXP window1: mouseVisible = True
21.8696 EXP window1: mouseVisible = True
21.8701 EXP window1: mouseVisible = True
21.8823 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8836 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8850 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8864 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8878 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8892 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8906 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8919 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8943 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8957 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8971 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8985 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.8999 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.9013 DEBUG TextBox2 loaded 1 chars with 0 blanks and 1 valid
21.9015 DEBUG Uploading Texture Font fontname to graphics card
21.9054 DEBUG Upload of Texture Font fontname complete
21.9069 EXP window1: mouseVisible = True

Hello

The print-commands serve to give you an idea what the value of a certain variable is and which parts of the if-construction you reach Does the output of the print-command correspond with your expectation? response.clicked is always Button, for instance.

Best wishes Jens

I completed another run through the builder as well as pavlovia.

During these runs, I intentionally clicked the button on every presentation of stimuli to ensure a consistent amount of errors.

During trial 1 (out of 5), all errors present on “3” were recorded as a 1 in comission errors. All subsequent trials the errors for “3” were recorded as 0 in omission errors and only 0 recorded in comission error column throughout the entire task (after round 1).

I did the same thing with the builder run, clicking on every presentation so that there should be the same amount of errors. The output from the runner only provided consistent commission errors for every trial.

absences of omission is consistent with all previous participants results from pavlovia run.

Trial 2 had 7

Trial 3 had 5

Trial 4 had 6

Trial 5 had 4

Does this say Button in your code?

for the first trial it does, the second one says Button_2 to correspond with the name of the button in trial two, and same with Button_3 through Button_5 in trial 5 where the button name is Button_5

Do you also change the name of the mouse component? Do you have a different mouse component each time? Does your mouse component have the correct button at clickable stimulus?

It’s generally better to reuse routines rather than make copies.

Your error report is difficult for me to interpret so I’m not clear what code is failing.

yes, each button in the experiment corresponds to a specific trial, with each trial having its own associated mouse component. The button and mouse are linked for each trial. Is there another way that I can randomize the trials with 5 probe caught questions dispersed throughout? I had originally used the counterbalance shelf but the newer update phased out that function.

I’m not sure how the shelf would help with this. In the first instance your code would need to allow the order to be varied.

For prospective memory tasks I have a variable (e.g. putTarget) and on each trial check if trials.thisN == putTarget. If it does then that trial becomes a PM trial and I add a constrained random integer to putTarget.

When I was using the shelf function, I had 3 different SART tasks in one experiment, each in their own loop which were assigned to the shelf and distributed so that each participant would only complete one. Trying to ensure as much randomization as possible with the placements of the probe questions.

Currently we are using just one SART task but are having issues with proper data collection.

That’s seems like a good way to ensure a dynamic and controlled distribution of PM trials.