﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Millisecond Forums » Millisecond Forums » Inquisit 6  » D scores not calculating as expected</title><generator>InstantForum 2017-1 Final</generator><description>Millisecond Forums</description><link>https://forums.millisecond.com/</link><webMaster>Millisecond Forums</webMaster><lastBuildDate>Thu, 10 Sep 2026 17:56:51 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: D scores not calculating as expected</title><link>https://forums.millisecond.com/Topic29898.aspx</link><description>&lt;blockquote data-id="29897" class="if-quote-wrapper" unselectable="on" data-guid="1602716006477" id="if_insertedNode_1602716005758" contenteditable="false"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="29897" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="29897" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="29897" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;crstevenson - 10/14/2020&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-29897"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;br/&gt;Hi Dave,&lt;br/&gt;&lt;br/&gt;Thanks for all this! Even after I do an inclusive SD like you described, I still don't get the same answer. I've attached the updated spreadsheet here. This is a screenshot of the values and the result I'm getting. Here are the steps I go through - maybe there is something wrong in the general steps I'm doing?&lt;br/&gt;&lt;br/&gt;1. calculate SD for practice blocks and real blocks&lt;br/&gt;2. calculate mean for incompatible and compatible practice blocks&lt;br/&gt;3. find the mean difference for practice blocks ((incompatible mean - compatible mean)/2)&lt;br/&gt;4. D_Pract = mean diff practice/SD for practice blocks&lt;br/&gt;5. calculate mean for incompatible and compatible real blocks&lt;br/&gt;6. find the mean difference for real blocks ((incompatible mean - compatible mean)/2)&lt;br/&gt;7. D_Real = mean diff real/SD for real blocks&lt;br/&gt;8. D = (D_Prac + D_Real)/2&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Thank you so much for your help!&lt;br/&gt;&lt;br/&gt;Cassandra&lt;a class="if-quote-goto quote-link" href="#" data-id="29897"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;You have mistakes in your script that lead to the exclusion of certain trials from the D-scores which should not be excluded.&lt;br/&gt;&lt;br/&gt;You uses the picture IAT template as the basis for your script. &lt;a href="https://www.millisecond.com/download/library/v6/iat/iattemplates/pictureiat/pictureiat/pictureiat.iqzip"&gt;&lt;a href="https://www.millisecond.com/download/library/v6/iat/iattemplates/pictureiat/pictureiat/pictureiat.iqzip"&gt;https://www.millisecond.com/download/library/v6/iat/iattemplates/pictureiat/pictureiat/pictureiat.iqzip&lt;/a&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Look at this:&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;&amp;lt;block compatibletest1&amp;gt;&lt;br/&gt;/ bgstim = (targetAleftmixed, orleft, attributeAleft, targetBrightmixed, orright, attributeBright)&lt;br/&gt;/ trials = [&lt;br/&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1=instructions;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3,5,7,9,11,13,15,17,19,21= random(targetAleft, targetBright);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2,4,6,8,10,12,14,16,18,20 = random(attributeA, attributeB)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ ontrialend = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatibletest1.latency  &amp;lt;= 10000&lt;strong&gt; &amp;amp;&amp;amp; block.compatibletest1.currenttrialnumber != 1&lt;/strong&gt; ) {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum1a += block.compatibletest1.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n1a += 1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss1a += (block.compatibletest1.latency * block.compatibletest1.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.compatibletest1.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatibletest1.latency &amp;lt; 300) {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt;The latency for the first trial in the "practice" blocks is not included in the calculations. Why? Because here the first trial is an instructions trial.&lt;br/&gt;&lt;br/&gt;Now look at your various "practice" blocks:&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;&amp;lt;block compatiblepractice_WMMath_AFArts&amp;gt;&lt;br/&gt;/ bgstim = (faceAleftmixed, wordAleft, faceBrightmixed, wordBright)&lt;br/&gt;/ trials = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1,3,5,7,9,11,13,15,17,19= random(faceAleft, faceBright);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2,4,6,8,10,12,14,16,18,20 = random(wordAL, wordBR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = [values.n1a += 1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatiblepractice_WMMath_AFArts.latency  &amp;lt;= 10000 &lt;strong&gt;&amp;amp;&amp;amp; block.compatiblepractice_WMMath_AFArts.currenttrialnumber != 1&lt;/strong&gt; &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum1a += block.compatiblepractice_WMMath_AFArts.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss1a += (block.compatiblepractice_WMMath_AFArts.latency * block.compatiblepractice_WMMath_AFArts.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.compatiblepractice_WMMath_AFArts.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatiblepractice_WMMath_AFArts.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatiblepractice_WMMath_AFArts.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt;Here, too, you are excluding anything that happens in the first trial from the calculations. But your first trial isn't an instructions trial -- it's an experimental trial.&lt;br/&gt;&lt;br/&gt;Then you have a serious mistake in your various incompatible blocks:&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;&amp;lt;block incompatiblepractice_AFMath_WMArts&amp;gt;&lt;br/&gt;/ bgstim = (faceBleftmixed, wordAleft, faceArightmixed, wordBright)&lt;br/&gt;/ trials = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1,3,5,7,9,11,13,15,17,19 = random(faceBleft, faceAright);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2,4,6,8,10,12,14,16,18,20 = random(wordAL, wordBR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = [&lt;i&gt;&lt;strong&gt;values.n2a += 1;&lt;/strong&gt;&lt;/i&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_AFMath_WMArts.latency  &amp;lt;= 10000 &amp;amp;&amp;amp; block.incompatiblepractice_AFMath_WMArts.currenttrialnumber != 1 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum2a += block.incompatiblepractice_AFMath_WMArts.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;values.n2a += 1;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss2a += (block.incompatiblepractice_AFMath_WMArts.latency * block.incompatiblepractice_AFMath_WMArts.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.incompatiblepractice_AFMath_WMArts.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_AFMath_WMArts.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_AFMath_WMArts.latency  &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block incompatiblepractice_WMArts_AFMath&amp;gt;&lt;br/&gt;/ bgstim = (faceAleftmixed, wordBleft, faceBrightmixed, wordAright)&lt;br/&gt;/ trials = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1,3,5,7,9,11,13,15,17,19 = random(faceAleft, faceBright);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2,4,6,8,10,12,14,16,18,20 = random(wordBL, wordAR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = &lt;strong&gt;[&lt;i&gt;values.n2a += 1;&lt;/i&gt;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_WMArts_AFMath.latency  &amp;lt;= 10000 &amp;amp;&amp;amp; block.incompatiblepractice_WMArts_AFMath.currenttrialnumber != 1 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum2a += block.incompatiblepractice_WMArts_AFMath.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;values.n2a += 1;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss2a += (block.incompatiblepractice_WMArts_AFMath.latency * block.incompatiblepractice_WMArts_AFMath.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.incompatiblepractice_WMArts_AFMath.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_WMArts_AFMath.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_WMArts_AFMath.latency  &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block incompatibletest_AFMath_WMArts&amp;gt;&lt;br/&gt;/ bgstim = (faceBleftmixed, wordAleft, faceArightmixed, wordBright)&lt;br/&gt;/ trials = [&lt;br/&gt;  2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40 = random(faceBleft, faceAright);&lt;br/&gt;  1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39 = random(wordAL, wordBR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = &lt;strong&gt;[&lt;i&gt;values.n2b += 1;&lt;/i&gt;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_AFMath_WMArts.latency  &amp;lt;= 10000 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum2b += block.incompatibletest_AFMath_WMArts.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;values.n2b += 1;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss2b += (block.incompatibletest_AFMath_WMArts.latency * block.incompatibletest_AFMath_WMArts.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.incompatibletest_AFMath_WMArts.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_AFMath_WMArts.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_AFMath_WMArts.latency  &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block incompatibletest_WMArts_AFMath&amp;gt;&lt;br/&gt;/ bgstim = (faceAleftmixed, wordBleft, faceBrightmixed,  wordAright)&lt;br/&gt;/ trials = [&lt;br/&gt;  2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40 = random(faceAleft, faceBright);&lt;br/&gt;  1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39 = random(wordBL, wordAR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = [&lt;i&gt;&lt;strong&gt;values.n2b += 1&lt;/strong&gt;;&lt;/i&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_WMArts_AFMath.latency  &amp;lt;= 10000 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum2b += block.incompatibletest_WMArts_AFMath.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;&amp;nbsp;&amp;nbsp;values.n2b += 1;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss2b += (block.incompatibletest_WMArts_AFMath.latency * block.incompatibletest_WMArts_AFMath.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.incompatibletest_WMArts_AFMath.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_WMArts_AFMath.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_WMArts_AFMath.latency  &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt;Notice that in these particular blocks you are incrementing n *twice* per trial. Because the first increment (italicized in the above) is unconditional, you'll also increase n in any trials where n shouldn't be increased at all (latency &amp;gt; 10000 or any "toofast" trials). This will obviously completely throw off the calculations.&lt;br/&gt;&lt;br/&gt;</description><pubDate>Thu, 15 Oct 2020 23:15:56 GMT</pubDate><dc:creator>Dave</dc:creator></item><item><title>RE: D scores not calculating as expected</title><link>https://forums.millisecond.com/Topic29899.aspx</link><description>&lt;blockquote data-id="29898" class="if-quote-wrapper" unselectable="on" data-guid="1602722134344" id="if_insertedNode_1602722133877" contenteditable="false"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="29898" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="29898" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="29898" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;Dave - 10/15/2020&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-29898"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;br/&gt;You have mistakes in your script that lead to the exclusion of certain trials from the D-scores which should not be excluded.&lt;br/&gt;&lt;br/&gt;You uses the picture IAT template as the basis for your script. &lt;a href="https://www.millisecond.com/download/library/v6/iat/iattemplates/pictureiat/pictureiat/pictureiat.iqzip"&gt;&lt;a href="https://www.millisecond.com/download/library/v6/iat/iattemplates/pictureiat/pictureiat/pictureiat.iqzip"&gt;https://www.millisecond.com/download/library/v6/iat/iattemplates/pictureiat/pictureiat/pictureiat.iqzip&lt;/a&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Look at this:&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;&amp;lt;block compatibletest1&amp;gt;&lt;br/&gt;/ bgstim = (targetAleftmixed, orleft, attributeAleft, targetBrightmixed, orright, attributeBright)&lt;br/&gt;/ trials = [&lt;br/&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1=instructions;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3,5,7,9,11,13,15,17,19,21= random(targetAleft, targetBright);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2,4,6,8,10,12,14,16,18,20 = random(attributeA, attributeB)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ ontrialend = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatibletest1.latency  &amp;lt;= 10000&lt;strong&gt; &amp;amp;&amp;amp; block.compatibletest1.currenttrialnumber != 1&lt;/strong&gt; ) {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum1a += block.compatibletest1.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n1a += 1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss1a += (block.compatibletest1.latency * block.compatibletest1.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.compatibletest1.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatibletest1.latency &amp;lt; 300) {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt;The latency for the first trial in the "practice" blocks is not included in the calculations. Why? Because here the first trial is an instructions trial.&lt;br/&gt;&lt;br/&gt;Now look at your various "practice" blocks:&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;&amp;lt;block compatiblepractice_WMMath_AFArts&amp;gt;&lt;br/&gt;/ bgstim = (faceAleftmixed, wordAleft, faceBrightmixed, wordBright)&lt;br/&gt;/ trials = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1,3,5,7,9,11,13,15,17,19= random(faceAleft, faceBright);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2,4,6,8,10,12,14,16,18,20 = random(wordAL, wordBR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = [values.n1a += 1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatiblepractice_WMMath_AFArts.latency  &amp;lt;= 10000 &lt;strong&gt;&amp;amp;&amp;amp; block.compatiblepractice_WMMath_AFArts.currenttrialnumber != 1&lt;/strong&gt; &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum1a += block.compatiblepractice_WMMath_AFArts.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss1a += (block.compatiblepractice_WMMath_AFArts.latency * block.compatiblepractice_WMMath_AFArts.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.compatiblepractice_WMMath_AFArts.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatiblepractice_WMMath_AFArts.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.compatiblepractice_WMMath_AFArts.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt;Here, too, you are excluding anything that happens in the first trial from the calculations. But your first trial isn't an instructions trial -- it's an experimental trial.&lt;br/&gt;&lt;br/&gt;Then you have a serious mistake in your various incompatible blocks:&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;&amp;lt;block incompatiblepractice_AFMath_WMArts&amp;gt;&lt;br/&gt;/ bgstim = (faceBleftmixed, wordAleft, faceArightmixed, wordBright)&lt;br/&gt;/ trials = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1,3,5,7,9,11,13,15,17,19 = random(faceBleft, faceAright);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2,4,6,8,10,12,14,16,18,20 = random(wordAL, wordBR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = [&lt;i&gt;&lt;strong&gt;values.n2a += 1;&lt;/strong&gt;&lt;/i&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_AFMath_WMArts.latency  &amp;lt;= 10000 &amp;amp;&amp;amp; block.incompatiblepractice_AFMath_WMArts.currenttrialnumber != 1 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum2a += block.incompatiblepractice_AFMath_WMArts.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;values.n2a += 1;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss2a += (block.incompatiblepractice_AFMath_WMArts.latency * block.incompatiblepractice_AFMath_WMArts.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.incompatiblepractice_AFMath_WMArts.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_AFMath_WMArts.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_AFMath_WMArts.latency  &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block incompatiblepractice_WMArts_AFMath&amp;gt;&lt;br/&gt;/ bgstim = (faceAleftmixed, wordBleft, faceBrightmixed, wordAright)&lt;br/&gt;/ trials = [&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1,3,5,7,9,11,13,15,17,19 = random(faceAleft, faceBright);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2,4,6,8,10,12,14,16,18,20 = random(wordBL, wordAR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = &lt;strong&gt;[&lt;i&gt;values.n2a += 1;&lt;/i&gt;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_WMArts_AFMath.latency  &amp;lt;= 10000 &amp;amp;&amp;amp; block.incompatiblepractice_WMArts_AFMath.currenttrialnumber != 1 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum2a += block.incompatiblepractice_WMArts_AFMath.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;values.n2a += 1;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss2a += (block.incompatiblepractice_WMArts_AFMath.latency * block.incompatiblepractice_WMArts_AFMath.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.incompatiblepractice_WMArts_AFMath.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_WMArts_AFMath.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatiblepractice_WMArts_AFMath.latency  &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block incompatibletest_AFMath_WMArts&amp;gt;&lt;br/&gt;/ bgstim = (faceBleftmixed, wordAleft, faceArightmixed, wordBright)&lt;br/&gt;/ trials = [&lt;br/&gt;  2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40 = random(faceBleft, faceAright);&lt;br/&gt;  1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39 = random(wordAL, wordBR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = &lt;strong&gt;[&lt;i&gt;values.n2b += 1;&lt;/i&gt;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_AFMath_WMArts.latency  &amp;lt;= 10000 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum2b += block.incompatibletest_AFMath_WMArts.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;values.n2b += 1;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss2b += (block.incompatibletest_AFMath_WMArts.latency * block.incompatibletest_AFMath_WMArts.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.incompatibletest_AFMath_WMArts.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_AFMath_WMArts.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_AFMath_WMArts.latency  &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;block incompatibletest_WMArts_AFMath&amp;gt;&lt;br/&gt;/ bgstim = (faceAleftmixed, wordBleft, faceBrightmixed,  wordAright)&lt;br/&gt;/ trials = [&lt;br/&gt;  2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40 = random(faceAleft, faceBright);&lt;br/&gt;  1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39 = random(wordBL, wordAR)]&lt;br/&gt;/ errormessage = true(error,200)&lt;br/&gt;/ responsemode = correct&lt;br/&gt;/ onblockbegin = [&lt;br/&gt;  parameters.showtoofast = true;&lt;br/&gt;]&lt;br/&gt;/ ontrialend = [&lt;i&gt;&lt;strong&gt;values.n2b += 1&lt;/strong&gt;;&lt;/i&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_WMArts_AFMath.latency  &amp;lt;= 10000 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.sum2b += block.incompatibletest_WMArts_AFMath.latency;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;&amp;nbsp;&amp;nbsp;values.n2b += 1;&lt;/strong&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.ss2b += (block.incompatibletest_WMArts_AFMath.latency * block.incompatibletest_WMArts_AFMath.latency);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values.n_correct += block.incompatibletest_WMArts_AFMath.correct;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_WMArts_AFMath.latency &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {values.toofast +=1;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {values.toofast = 0;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(block.incompatibletest_WMArts_AFMath.latency  &amp;lt; 300 &amp;amp;&amp;amp; script.currenttrial != "toofast") {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(1);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;list.RT300.appenditem(0);&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;br/&gt;]&lt;br/&gt;&amp;lt;/block&amp;gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt;Notice that in these particular blocks you are incrementing n *twice* per trial. Because the first increment (italicized in the above) is unconditional, you'll also increase n in any trials where n shouldn't be increased at all (latency &amp;gt; 1000 or any "toofast" trials). This will obviously completely throw off the calculations.&lt;br/&gt;&lt;br/&gt;&lt;a class="if-quote-goto quote-link" href="#" data-id="29898"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;Hi Dave,&lt;br/&gt;&lt;br/&gt;I am SO sorry for wasting your time - I had actually noticed these issues in the code and fixed them a few days ago. I guess I re-uploaded the wrong script to my online experiment so when I was running dummies, I was actually running the wrong script which had all these issues. I just re-uploaded, ran a dummy, and the calculations are all matching up. Thank you so much for all your continued help with this and I am so sorry again! You're the best!&lt;br/&gt;&lt;br/&gt;Cassandra</description><pubDate>Thu, 15 Oct 2020 23:15:02 GMT</pubDate><dc:creator>crstevenson</dc:creator></item><item><title>RE: D scores not calculating as expected</title><link>https://forums.millisecond.com/Topic29900.aspx</link><description>&lt;blockquote data-id="29899" class="if-quote-wrapper" unselectable="on" data-guid="1602723150566" id="if_insertedNode_1602723149195" contenteditable="false"&gt;&lt;a class="quote-para" unselectable="on" style="display: none;" href="#" data-id="29899" title="Move Cursor Below" contenteditable="false"&gt;&lt;span unselectable="on"&gt;+&lt;/span&gt;&lt;/a&gt;&lt;a class="quote-delete" unselectable="on" style="display: none;" href="#" data-id="29899" title="Delete Quote" contenteditable="false"&gt;&lt;span unselectable="on"&gt;x&lt;/span&gt;&lt;/a&gt;&lt;span unselectable="on" class="quote-markup"&gt;[quote]&lt;/span&gt;&lt;div unselectable="on" class="if-quote-header" contenteditable="false"&gt;&lt;div unselectable="on" class="if-quote-toggle-wrapper"&gt;&lt;a class="if-quote-toggle quote-link" href="#" data-id="29899" title=" "&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[b]&lt;/span&gt;crstevenson - 10/15/2020&lt;span unselectable="on" class="quote-markup"&gt;[/b]&lt;/span&gt;&lt;/div&gt;&lt;div class="if-quote-message if-quote-message-29899"&gt;&lt;div class="if-quote-message-margin" contenteditable="true"&gt;&lt;br/&gt;Hi Dave,&lt;br/&gt;&lt;br/&gt;I am SO sorry for wasting your time - I had actually noticed these issues in the code and fixed them a few days ago. I guess I re-uploaded the wrong script to my online experiment so when I was running dummies, I was actually running the wrong script which had all these issues. I just re-uploaded, ran a dummy, and the calculations are all matching up. Thank you so much for all your continued help with this and I am so sorry again! You're the best!&lt;br/&gt;&lt;br/&gt;Cassandra&lt;a class="if-quote-goto quote-link" href="#" data-id="29899"&gt;&lt;span class="goto"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;span unselectable="on" class="quote-markup"&gt;[/quote]&lt;/span&gt;&lt;/blockquote&gt;&lt;br/&gt;I'm glad that's sorted -- thanks for letting me know!&lt;br/&gt;</description><pubDate>Thu, 15 Oct 2020 00:53:03 GMT</pubDate><dc:creator>Dave</dc:creator></item><item><title>D scores not calculating as expected</title><link>https://forums.millisecond.com/Topic29887.aspx</link><description>Hello,&lt;br/&gt;&lt;br/&gt;We have begun running our experiment, but D scores are not calculating as we'd expect. We hand-calculated some and the results are not coming out the same.&lt;br/&gt;I'd appreciate it if you could let me know if this is a problem in the programming, or a problem in my manual calculations?&amp;nbsp;&lt;br/&gt;&lt;br/&gt;These are the steps I'm going through manually (after removing the necessary trials):&lt;br/&gt;1.&amp;nbsp;Compute the standard deviation for each participant’s “practice” trials&lt;br/&gt;2. Compute the standard deviation for each participant’s “real” trials&lt;br/&gt;3. Compute the mean difference between practice blocks and divide for each participant and by each individual’s pooled SD&lt;br/&gt;Practice Difference Score = (Mean (Practice incompatible) – Mean (Practice compatible)) / Mean SD for Practice Trials (Step 1)&lt;br/&gt;4. Compute the mean difference between the real IAT-blocks and divide by pooled SD&lt;br/&gt;Real Difference Score = (Mean (Real incompatible) – Mean (Real compatible)) /&amp;nbsp;Mean SD for Real Trials (Step 2)&lt;br/&gt;5. Create D score by averaging  the practice difference score (step 3) and the real difference score (step 4) &lt;br/&gt;&lt;br/&gt;I've attached my program here so you can take a look. All the calculations look the same to me and all my lab members. I also checked that the right values/expressions were in each block and it all looks good to me, so we're really stumped as to why we're getting such different results. Any help is greatly appreciated.&lt;br/&gt;&lt;br/&gt;Thank you so much!&lt;br/&gt;&lt;br/&gt;Cassandra</description><pubDate>Thu, 15 Oct 2020 00:53:03 GMT</pubDate><dc:creator>crstevenson</dc:creator></item></channel></rss>