Hello to you all, i had a problem while building a wisconsin card sorting test:
As you know when a certain number of correct responses is submitted, the association principle changes (e.g. if it was “Color” now its “Shape”…and so on). I have some problems when the rules changes, as psychopy start presenting cards from the first one on the list. Instead i need that if in the 35th trial the rules changes, then the card after this changing of rule will be the 36th card on the deck and not the first one again.
I have one excel file for the routine that contains the cards (association principle, deck cards correct response), and one for the loop that only has the indexes of the rows to be utilized by psychopy to present the cards.
I have windows 11, working with psychopy 2024.2.2.
Hi @Jordy_Di_Giulio,
It took me a moment to understand what the issue is, but I think I understand it now and also have a solution for it. There are two problems that need solving: 1) You can’t know in advance when the rule needs to switch, as this depends on the behaviour of the participant. 2) What the correct answer is depends on the current rule. So, it’s not possible to define a single correct answer in advance that is independent of the current rule.
Essentially, a code component is required to solve these problems. In my example, the code component keeps track of the number of consecutive correct responses and determines what the correct answer is based on the current rule (it basically switches between different columns in the condition file that define correct answers for a given rule). It also changes the rule once the required number of consecutive correct responses has been achieved. The example uses only two rules, but the same principle applies to a task with more rules.
Note that if the order of cards is fixed, “loop type” needs to be sequential.
Jan
wcst.psyexp (19.3 KB)
input.xlsx (9.2 KB)