Quality Assurance - Data File Information/Dictionary

From Q
Jump to navigation Jump to search

This QScript shows values, labels, Question Type and Variable Type information for the variables in a data file (i.e., it is similar to the data file information/dictionaries prepared by SPSS and other programs). A text report is shown on the screen, which can be copied and pasted into other applications for viewing or printing.

Example

------------------------------------------------------------------------
The ID that is included in the web address in each recruit's invitation
Text Question
------------------------------------------------------------------------

------------------------------------------------------------------------
Respondent type

Question Type: Pick One
Variable Type: Categorical

Precode		Label
-------------		---------
1		normal respondent
2		test respondent
3		designer/tester
------------------------------------------------------------------------

Technical details

This QScript goes through each question in the project and reports:

  • The Question Type of the question.
  • The Variable Type of the first variable in the question.
  • The list of Source Values (original value in the data file) and the label associated with each value. Note that source values are the original values in the data file, and so the display of those values does not reflect any changes (recoding) that you have made in the Q Project.

If a question is Text then the responses are not displayed.

How to apply this QScript

  • Start typing the name of the QScript into the Search features and data box in the top right of the Q window.
  • Click on the QScript when it appears in the QScripts and Rules section of the search results.

OR

  • Select Automate > Browse Online Library.
  • Select this QScript from the list.

Customizing the QScript

This QScript is written in JavaScript and can be customized by copying and modifying the JavaScript.

Customizing QScripts in Q4.11 and more recent versions

  • Start typing the name of the QScript into the Search features and data box in the top right of the Q window.
  • Hover your mouse over the QScript when it appears in the QScripts and Rules section of the search results.
  • Press Edit a Copy (bottom-left corner of the preview).
  • Modify the JavaScript (see QScripts for more detail on this).
  • Either:
    • Run the QScript, by pressing the blue triangle button.
    • Save the QScript and run it at a later time, using Automate > Run QScript (Macro) from File.

Customizing QScripts in older versions

  • Copy the JavaScript shown on this page.
  • Create a new text file, giving it a file extension of .QScript. See here for more information about how to do this.
  • Modify the JavaScript (see QScripts for more detail on this).
  • Run the file using Automate > Run QScript (Macro) from File.

JavaScript

var separator = "------------------------------------------------------------------------";
  
var all_questions = project.dataFiles[0].getQuestionsByName(""); // Array of all the questions

project.dataFiles[0].questions.forEach(function (question) {
    log(separator);
    log(question.name + "\n"); // Print question name
    if(question.questionType.indexOf("Text") != 0) {
 
        log("\r\n" + "Question Type: " + question.questionType); // Print question type
        log("Variable Type: " + question.variables[0].variableType); // Print variable type
        log("\r\nSource Value\tLabel");
        log("---------------------\t---------");

        var cur_value_attributes = question.valueAttributes; // Value attributes for this question
        // Report Source Values and Labels for this question        
        question.uniqueValues.forEach(function (value) {
            log(value  + "\t\t" + cur_value_attributes.getLabel(value)); // Add the code and label to the table
        });
    }
    else {
        log("Text Question"); // Don't print values for text questions
    }
    log(separator);
    log("\n\n\n\n\n\n");
});

See also