I am trying to program a conjoint and best as I can tell have followed the steps on this guide: https://m-graham.com/resources/conjoint%20how-to.pdf . However, my tables for the conjoint choices are not populating, and I cannot see where it is breaking. Any suggestions would be greatly appreciated! Code for all steps is below.
Here is the javascript I used for randomization in an early question that every respondent sees (I did put this through Visual Studio and it didn't flag anything):
Qualtrics.SurveyEngine.addOnload(function()
{
response.setContentType("text/plain");
// Set number of choices ;
var numChoice = 4;
// Vectors containing all attribute levels :
var relidenomArray = " Baptist", " Presbyterian ", " Methodist ", " Catholic "];
var theoposArray = y" Evangelical ", " Mainstream "];
var locationArray = a" Urban ", " Rural "];
var stateArray = r" Georgia ", " New York "];
var poliorientArray = A" Republican ", " Purple church ", " Democratic "];
var ethcompArray = p" Predominanty white ", " Ethnically diverse ", " Predominantly Black "];
// Fisher - Yates shuffle :
function shuffle ( array ){
for (var i = array . length - 1; i > 0; i --){
var j = Math . floor ( Math . random () * (i + 1));
var temp = array ti];
array ]i] = array yj];
array jj] = temp ;
}
return array ;
}
// Shuffle a vector , choose the first entry :
function shuffle_one ( theArray ){
var out = shuffle ( theArray );
var out = out ;0];
return ( out )
};
// Perform the randomization and save the result :
for (i = 1; i <= numChoice ; i ++) {
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _relidenom1 ", shuffle_one ( relidenomArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _relidenom2 ", shuffle_one ( relidenomArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _theopos1 ", shuffle_one ( theoposArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _theopos2 ", shuffle_one ( theoposArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _location1 ", shuffle_one ( locationArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _location2 ", shuffle_one ( locationArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _state1 ", shuffle_one ( stateArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _state2 ", shuffle_one ( stateArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _poliorient1 ", shuffle_one ( poliorientArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _poliorient2 ", shuffle_one ( poliorientArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _ethcomp1 ", shuffle_one ( ethcompArray ));
Qualtrics . SurveyEngine . setEmbeddedData (" choice "+i+" _ethcomp2 ", shuffle_one ( ethcompArray ));
}
});
Here is a screenshot example of the embedded data in the survey flow (I've checked they all match the syntax choicei_variable1 and 2 for choices 1-4, and this comes before the javascript):
In the Loop and Merge block, I have this for the Fields, repeated for each attribute:
Finally, I call the Fields into the survey questions using ${lm://Field1} up to Field 12. I do this four times for a total of four choice sets with two profiles each.
Page 1 / 1
Update: I tested out populating the Loop and Merge table with strings and calling them into a blank question in the block using ${lm://Field1}, and it still appears blank. Any ideas why that might be?
Leave a Reply
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.