Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

Repeat a row until correct response

Hi! We have a simple problem. We are creating a change blindness experiment and for this,
we are using the flicker paradigm. We want to show the same photos until the correct response but we couldn't make it. İs there a solution to repeat the same row in a loop until the response. We also don't know python, can somebody help us? We have a deadline, because of this, we need a hurry answer! Thanks in advance!


Comments

  • Hello again,
    http://www.cogsci.nl/forum/index.php?p=/discussion/535/solved-how-to-repeat-a-particular-trial-until-correct-before-moving-on-to-next-trial/p1
    That solution is working. Sorry, we didn't see that before open this discussion. Know, we need to get a limit on the trials. Can anyone help? Thanks!

  • Hi,

    What do you mean with 'limit on the trials'? Could you elaborate?

    Eduard

    Thanked by 1que211
  • Hi Eduard,
    We want to show a pair of pictures for 3 times in max. If participant gives a response, trial should move on to next pair. If participant doesn't give a response in 3 times, it should move on too. We tried to use run if function for inline script by limiting response time but in that way inline script didn't work again in the next pair. I suppose we need a restart function but we couldn't find it.
  • Hi,

    You will need to introduce a counter variable. Every time you rerun the trial sequence, you have to increment it. As soon as the counter has the value you want (e.g. 3), you don't rerun the trial sequence any more. WIll you manage to implement it? I don't know how you implemented it, but if you used the code in the link, it could look like this:

    # in the beginning of the block, you will have to initialize the variable "counter", like so:
    # counter = 0
    
    # If participant gave an incorrect response:
    if self.get('correct') == 0 and counter <3:
        # Prepare the whole trial sequence (here called
        # 'trial_sequence') again:
        exp.items['trial_sequence'].prepare()
        # And run it again:
        exp.items['trial_sequence'].run()
        # increment the counter
        counter+=1
    

    Hope this helps,

    Eduard

  • Hi Eduard,
    Problem has fixed!

    Thank you so much!
Sign In or Register to comment.