(如何)我可以告诉我的 JavaScript 将 variable/column 附加到数据 Qualtrics 导出?

(how) can I tell my JavaScript to append a variable/column to the data Qualtrics exports?

我在 Qualtrics 中实现了一个任务,随机选择 0 到 3 之间的一个数字,然后选择一个对应的词库从中抽取 5 个词。不过,为了能够分析这些数据,我需要知道向每个受访者提供了哪 5 个词(或至少是从中抽样的词库的索引号或名称)。有没有办法在JavaScript内实现记录这些信息?理想情况下,当我使用 Qualtrics 的本机“导出”选项时,这些信息会显示出来,但如果我必须以某种方式用这些处理数据创建第二个电子表格,那也能正常工作。

Qualtrics.SurveyEngine.addOnload(function()

{

// first, create four arrays for the four word pools used in task

var wordpool1 = []

var wordpool2 = []

var wordpool3 = []

var wordpool4 = []

// assemble word list arrays into one array, with index 0-3

let masterwordlist = [wordpool1, wordpool2, wordpool3, wordpool4]

// function that randomly chooses an integer between x and y

function randomInteger(min, max) {

 return Math.floor(Math.random() * (max - min + 1)) + min;

}

// function that shuffles (randomizes) a word list array (Fisher-Yates shuffle )

    function shuffle(target){

      for (var i = target.length - 1; i > 0; i--){

        var j = Math.floor(Math.random() * (i + 1));

        var temp = target[i];

        target[i] = target[j];

        target[j] = temp;

      }

      return target;

    }

// function that chooses 5 words from a shuffled word list array, returns those 5 words as array

function pickWords(target) {

var randomwords = shuffle(target)

 return randomwords.slice(0, 5);

}

// top-level function 

function genWords(masterlist){

var x = randomInteger(0, 3)

return pickWords(masterlist[x])

}

// actually running the function

randomwords = genWords(masterwordlist)

// save final output as embedded qualtrics data

Qualtrics.SurveyEngine.setEmbeddedData("randomwords", randomwords);

有没有一种方法可以让我记录此代码(在 Qualtrics 或其他方式中)var x 或 var randomwords 所采用的值?

编辑:我在这里找到了另一个可能相关的答案。不过,根据这个答案,我似乎拥有记录变量选择所需的所有代码;我还需要在调查流程中设置嵌入式数据吗? 看这里:

是的,您需要在调查流程中定义嵌入数据字段randomwords。