Millisecond Forums

Random order of Wisconsin Card Sorting Test blocks

https://forums.millisecond.com/Topic21487.aspx

By JacintaS - 5/2/2017

Hi, how do I change the Wisconsin Card Sorting Test so that the order of the three blocks (colour, form and number) occurs in a randomised order but only once each.

Thanks
By Dave - 5/2/2017

JacintaS - Tuesday, May 2, 2017
Hi, how do I change the Wisconsin Card Sorting Test so that the order of the three blocks (colour, form and number) occurs in a randomised order but only once each.

Thanks

You put the three blocks in a list

<list blocklist>
/ items = (block.color, block.form, block.number)
</list>

and use that for block selection in the <expt>

<expt>
/ onexptbegin = [if (!values.showdeckinfo) text.deck.textcolor = white]
/ blocks = [1 = list.blocklist; 2 = end]
...
</expt>

and the <block>s' /branch attributes.

<block color>
...
/ branch = [if (values.colorblockcount > values.cstotalblocks) block.end]
/ branch = [if (expressions.toomanytrials) block.end]
/ branch = [if (values.correctstreak > 0 && mod(values.correctstreak, values.correctstreakthreshold)==0)
                            {values.OldRuleWindow = 1;  list.blocklist.nextvalue}]
</block>

<block form>
...
/ branch = [if (values.formblockcount > values.cstotalblocks) block.end]
/ branch = [if (expressions.toomanytrials) block.end]
/ branch = [if (values.correctstreak > 0 && mod(values, values.correctstreakthreshold)==0)
                            {values.OldRuleWindow = 1; list.blocklist.nextvalue}]
</block>

<block number>
...
/ branch = [if (values.numberblockcount > values.cstotalblocks) block.end]
/ branch = [if (expressions.toomanytrials) block.end]
/ branch = [if (values.correctstreak > 0 && mod(values.correctstreak, values.correctstreakthreshold) ==0)
                            {values.OldRuleWindow = 1; list.blocklist.nextvalue}]
</block>

You also need to set values.cstotalblocks to 1, as detailed in the comments.

***************************
editable (under values, see below)
***************************
cstotaltrials:                                     Maximum Number of trials (default = 128 => 2 decks x 64 cards)
cstotalblocks:                                  Maximum Number each category is tested (default = 2)
correctstreakthreshold:                          Number of consecutive correct responses before a rule change (default = 10)
setmaintainthreshold:                             Number of consecutive correct responses after which an incorrect response is scored as a "Failure to maintain Set" (default = 5)
showdeckinfo:                                      if set to " true" information about the deck (e.g. 1 of 2) and card number (e.g. 7 of 64) are displayed on the screen for the participant to see
                                                        (default: false)

/picsize:                                        size of cards determined by canvas height percentage (default:30%)

***Edits need to be made here to come into effect
<values>
/ cstotaltrials = 128
/ cstotalblocks = 1
/ correctstreakthreshold = 10
/setmaintainthreshold = 5
/showdeckinfo = false

/picsize =30%
</values>

See attached.
By JacintaS - 5/21/2017


Thank you very much for that! I would like for the test to always have 128 trials rather than stopping at 64. How can I do this?

Thanks again!
By Dave - 5/21/2017

JacintaS - Sunday, May 21, 2017

Thank you very much for that! I would like for the test to always have 128 trials rather than stopping at 64. How can I do this?

Thanks again!


That doesn't make any sense. The number of trials will vary between-subjects depending on how quickly a given participant identifies the current sorting rule, adheres to it, and is able to identify a new sorting rule after a switch.

If you want a *maximum* of 128 trials, set values.cstotalblocks to 2, as detailed in the comments.