Post by Shahd on Oct 16, 2019 23:15:35 GMT
Hi all,
I've made some modifications to the exo/endo task, but I've kept the structure of validity similar. In my task, there are 200 trials. I'd like 60% of them to be valid, whilst the remainder are invalid. In keeping with the example, I've written:
## choose valid/invalid
set $valid random from 1 1 1 0 0 ## this means 40% invalid; valid=1,invalid=0
if $valid == 1 # if valid, cue and target are the same
set $cue random 1 4
set $target $cue
fi
if $valid == 0 # if not valid, cue and target must be different
set $cue random 1 4
set $target random 1 4
while $cue == $target #if cue and target still the same then randomise target until they're not
set $target random 1 4
while-end
fi
However, when I run the task, I do not get 40 invalid trials. At times I get 38. At times I get 36. It's unclear to me the reason this may be happening. Any help would be appreciated.
Moreover, I'd like to have a random SOA of either 500 or 1000. But, I'd like an equal number of each SOA presented within each validity condition (i.e., 30 valid trials will be SOA 500 and 30 will be SOA 1000). Can such a rule be implemented? I had the below to start off:
set $SOA random from 1 0 #variable SOA to make target appearance random from 1 = 500 to 0 = 1000
if $SOA == 1
readkey 1 500 # wait and ensure no key has been pressed
fi
if $SOA == 0
readkey 1 1000 # wait and ensure no key has been pressed for 1000ms before presenting target
fi
But, again, that doesn't ensure equal presentation of each SOA overall, let alone within each condition of validity.
I've made some modifications to the exo/endo task, but I've kept the structure of validity similar. In my task, there are 200 trials. I'd like 60% of them to be valid, whilst the remainder are invalid. In keeping with the example, I've written:
## choose valid/invalid
set $valid random from 1 1 1 0 0 ## this means 40% invalid; valid=1,invalid=0
if $valid == 1 # if valid, cue and target are the same
set $cue random 1 4
set $target $cue
fi
if $valid == 0 # if not valid, cue and target must be different
set $cue random 1 4
set $target random 1 4
while $cue == $target #if cue and target still the same then randomise target until they're not
set $target random 1 4
while-end
fi
However, when I run the task, I do not get 40 invalid trials. At times I get 38. At times I get 36. It's unclear to me the reason this may be happening. Any help would be appreciated.
Moreover, I'd like to have a random SOA of either 500 or 1000. But, I'd like an equal number of each SOA presented within each validity condition (i.e., 30 valid trials will be SOA 500 and 30 will be SOA 1000). Can such a rule be implemented? I had the below to start off:
set $SOA random from 1 0 #variable SOA to make target appearance random from 1 = 500 to 0 = 1000
if $SOA == 1
readkey 1 500 # wait and ensure no key has been pressed
fi
if $SOA == 0
readkey 1 1000 # wait and ensure no key has been pressed for 1000ms before presenting target
fi
But, again, that doesn't ensure equal presentation of each SOA overall, let alone within each condition of validity.