Go no go paradigm - iscorrectresponse


Author
Message
tecnika
tecnika
Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)
Group: Forum Members
Posts: 156, Visits: 790
Hello,

In a go no-go paradigm, I am having difficulties in coding correct responses with iscorrectresponse. When cue (that change every trials) and response selection (that stays on the screen for the whole duration of the experiment) are different the participant should click on the "Go_noGo" image, but in the datafile it shows as 0 on the "correct" columns. If they are equals, instead, if the participant does not respond or skip the trial the response is correct (and it's shown as "1" in the correct column indeed). Any clue on what I may have done wrong? Thank you,

Elena

<trial 1_tap_V_Cue_Test>
/ ontrialbegin = [values.resp = 0;]
/ ontrialend = [if (trial.1_tap_V_Cue_Test.response == "Go_noGo") values.resp = radiobuttons.ResponseStimulusGnG.response]
/ ontrialend = [if (trial.1_tap_V_Cue_Test.response == "skip") values.resp = "skip"]

/ iscorrectresponse =
[if (values.currentCue != values.response_selection) {Go_noGo};
if (values.currentCue == values.response_selection) {skip || 0};]

/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {values.currentCue=list.Cue_random.nextvalue; }]
/ ontrialbegin = [if (dropdown.CueOrder.response == "predetermined") {values.currentCue=list.Cue_sequence.nextvalue; }]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.poolsize = textbox.nrTrialsTest.response;}]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.itemprobabilities.1 = values.probabilityCue1;}]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.itemprobabilities.2 = values.probabilityCue2;}]
/ ontrialbegin = [values.timeoutGnG = textbox.timeoutGnG.response]
/ ontrialbegin = [values.nr_experimental_trials += 1]
/ ontrialbegin = [values.nr_practice_trials = 0]
/ ontrialbegin = [picture.Visual_Cue.hposition = 50%; picture.Visual_Cue.vposition = 20%;]
/ inputdevice = mouse
/ stimulustimes = [1 = Go_noGo; 200 = Visual_Cue, Go_noGo, skip]
/ timeout = values.timeoutGnG*1000 + 200
/ showmousecursor = true
/ validresponse = (Go_noGo, skip)
/ branch = [if (values.nr_experimental_trials < textbox.nrTrialsTest.response) trial.1_tap_V_Cue_test else trial.End]
</trial>
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
tecnika - Tuesday, September 18, 2018
Hello,

In a go no-go paradigm, I am having difficulties in coding correct responses with iscorrectresponse. When cue (that change every trials) and response selection (that stays on the screen for the whole duration of the experiment) are different the participant should click on the "Go_noGo" image, but in the datafile it shows as 0 on the "correct" columns. If they are equals, instead, if the participant does not respond or skip the trial the response is correct (and it's shown as "1" in the correct column indeed). Any clue on what I may have done wrong? Thank you,

Elena

<trial 1_tap_V_Cue_Test>
/ ontrialbegin = [values.resp = 0;]
/ ontrialend = [if (trial.1_tap_V_Cue_Test.response == "Go_noGo") values.resp = radiobuttons.ResponseStimulusGnG.response]
/ ontrialend = [if (trial.1_tap_V_Cue_Test.response == "skip") values.resp = "skip"]

/ iscorrectresponse =
[if (values.currentCue != values.response_selection) {Go_noGo};
if (values.currentCue == values.response_selection) {skip || 0};]

/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {values.currentCue=list.Cue_random.nextvalue; }]
/ ontrialbegin = [if (dropdown.CueOrder.response == "predetermined") {values.currentCue=list.Cue_sequence.nextvalue; }]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.poolsize = textbox.nrTrialsTest.response;}]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.itemprobabilities.1 = values.probabilityCue1;}]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.itemprobabilities.2 = values.probabilityCue2;}]
/ ontrialbegin = [values.timeoutGnG = textbox.timeoutGnG.response]
/ ontrialbegin = [values.nr_experimental_trials += 1]
/ ontrialbegin = [values.nr_practice_trials = 0]
/ ontrialbegin = [picture.Visual_Cue.hposition = 50%; picture.Visual_Cue.vposition = 20%;]
/ inputdevice = mouse
/ stimulustimes = [1 = Go_noGo; 200 = Visual_Cue, Go_noGo, skip]
/ timeout = values.timeoutGnG*1000 + 200
/ showmousecursor = true
/ validresponse = (Go_noGo, skip)
/ branch = [if (values.nr_experimental_trials < textbox.nrTrialsTest.response) trial.1_tap_V_Cue_test else trial.End]
</trial>

/ iscorrectresponse =
[if (values.currentCue != values.response_selection) {Go_noGo};
if (values.currentCue == values.response_selection) {skip || 0};]

is not valid syntax. It needs to read

/ iscorrectresponse = [(values.currentcue != values.response_selection && trial.1_tap_V_Cue_Test.response == "Go_noGo")
|| (values.currentcue == values.response_selection && trial.1_tap_V_Cue_Test.response == "skip")
|| (values.currentcue == values.response_selection && trial.1_tap_V_Cue_Test.response == 0)]

if I understand your setup correctly.

tecnika
tecnika
Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)Guru (13K reputation)
Group: Forum Members
Posts: 156, Visits: 790
Dave - Tuesday, September 18, 2018
tecnika - Tuesday, September 18, 2018
Hello,

In a go no-go paradigm, I am having difficulties in coding correct responses with iscorrectresponse. When cue (that change every trials) and response selection (that stays on the screen for the whole duration of the experiment) are different the participant should click on the "Go_noGo" image, but in the datafile it shows as 0 on the "correct" columns. If they are equals, instead, if the participant does not respond or skip the trial the response is correct (and it's shown as "1" in the correct column indeed). Any clue on what I may have done wrong? Thank you,

Elena

<trial 1_tap_V_Cue_Test>
/ ontrialbegin = [values.resp = 0;]
/ ontrialend = [if (trial.1_tap_V_Cue_Test.response == "Go_noGo") values.resp = radiobuttons.ResponseStimulusGnG.response]
/ ontrialend = [if (trial.1_tap_V_Cue_Test.response == "skip") values.resp = "skip"]

/ iscorrectresponse =
[if (values.currentCue != values.response_selection) {Go_noGo};
if (values.currentCue == values.response_selection) {skip || 0};]

/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {values.currentCue=list.Cue_random.nextvalue; }]
/ ontrialbegin = [if (dropdown.CueOrder.response == "predetermined") {values.currentCue=list.Cue_sequence.nextvalue; }]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.poolsize = textbox.nrTrialsTest.response;}]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.itemprobabilities.1 = values.probabilityCue1;}]
/ ontrialbegin = [if (dropdown.CueOrder.response == "random") {list.Cue_random.itemprobabilities.2 = values.probabilityCue2;}]
/ ontrialbegin = [values.timeoutGnG = textbox.timeoutGnG.response]
/ ontrialbegin = [values.nr_experimental_trials += 1]
/ ontrialbegin = [values.nr_practice_trials = 0]
/ ontrialbegin = [picture.Visual_Cue.hposition = 50%; picture.Visual_Cue.vposition = 20%;]
/ inputdevice = mouse
/ stimulustimes = [1 = Go_noGo; 200 = Visual_Cue, Go_noGo, skip]
/ timeout = values.timeoutGnG*1000 + 200
/ showmousecursor = true
/ validresponse = (Go_noGo, skip)
/ branch = [if (values.nr_experimental_trials < textbox.nrTrialsTest.response) trial.1_tap_V_Cue_test else trial.End]
</trial>

/ iscorrectresponse =
[if (values.currentCue != values.response_selection) {Go_noGo};
if (values.currentCue == values.response_selection) {skip || 0};]

is not valid syntax. It needs to read

/ iscorrectresponse = [(values.currentcue != values.response_selection && trial.1_tap_V_Cue_Test.response == "Go_noGo")
|| (values.currentcue == values.response_selection && trial.1_tap_V_Cue_Test.response == "skip")
|| (values.currentcue == values.response_selection && trial.1_tap_V_Cue_Test.response == 0)]

if I understand your setup correctly.

it works! thank you Dave

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search