Multi-select questions are everywhere in survey research. You would find it difficult to come across a survey without a "select all that apply" question or a grid-style question. Likewise, it's common in analysis to want to create additional variables that summarise information in a similar structure.
In this article, we explore:
- What are the multi-selection variables in Crunch?
- How to set them up in a dataset setup process (i.e., to match questionnaire structure)
- How you can use the array builder to create additional summaries (i.e., for analysis purposes, such as a 'top box' or 'KPI' summary)
For articles on specific applications of this feature, see the following:
What are the multi-selection question structures in Crunch?
Multi-select questions come in two main forms:
- checking a number of options (eg: Which of the following brands are you aware of? Please select all that apply).
- Sometimes referred to as multiple responses, pick any, select-any, multiple checkboxes
- In Crunch, this is a multiple response variable.
- in a grid layout where you select one option per row (eg: For each of the following statements, please specify how much you agree or disagree on the following scale).
- Sometimes referred to as matrix questions, radio grids, pick one-multi's, or simply grids.
- In Crunch, this is a categorical array variable.
Survey questions like these require multiple variables (columns in the data) to encode each of the possible responses (or non-responses). As such, you need to group the variables together if you want to form a multiple response or categorical array variable. When individual variables are grouped together they become sub-variables of the overall array variable.
We collectively to multiple response and categorical arrays are actually very similar programmatically and structurally (two sides of the same coin). Multiple response variables are actually dichtomosized arrays, as we explain below. For that reason, how you build them in Crunch is almost identical.
Setting up a dataset with multiple response and categorical arrays
When working with source variables (the data collected in the survey), they should be set into arrays. This is best practice because this matches the structure of the questionnaire.
Note: If you're a researcher receiving a dataset from a data processing department, this should be set up for you (to match the structure of the questionnaire). If so, you should just skip to the next section which talks about creating additional arrays for analysis purposes.
Ideally, multiple response variables and categorical arrays automatically grouped when you import data into Crunch. This is the case if you use a direct survey importer (such as Decipher or SurveyMonkey) or if you describe the data fully using a metadata .json file to accompany .csv data. Then you don't need to do any of this section, and can skip to the next section (analysis summaries).
When you use SPSS .sav files, sometimes the metadata that describes the grouping is lost. In that case, you need to tell Crunch that variables go together into an array. Sometimes though, the SPSS file does retains this information, and you'll see multiple response variables set up in Crunch (as noted by the Variable Type in the variable Properties).
To create a multiple response or categorical array (which we refer to as 'arrays' generally):
- Click + New Variable at the bottom of the sidebar (bottom left)
- Select Multiple Response or Categorical Array from the Create Variable page that slides out.
- Select the variables on the left in the panel that you want to go into the array
- Make sure the tab at the top is set to be on Multiple Response or Categorical Array
If you've set it to be a Multiple Response variable, then you need to do this additional step:
- Check the options that you want to "count" for the multiple responses. This is typically a response like "Selected" or "Yes". When selected, only this category will count in the % expressed.
Then hit Save to save the new variable.
The new variable is a derivation - meaning, it is calculated from the variables you inputted at Step 3 above. For that reason, you should consider hiding the contributing variables or putting them elsewhere in a folder.
Note: Your analysis typically does not require the original separated variables. You can still access individual variables from within an array (using the little plus that appears when you hover your mouse over its label in the Variable Organizer). It is best practice in the initial setup of a dataset to have all variables bound together as per the questionnaire.
Creating additional arrays in a dataset
You can also use the very same array builder to easily make summaries of other variables. These are summaries of information for analysis that goes beyond just the initial setup of a dataset. Common examples include:
- You want to make a 'top box' or 'bottom box' summary (multiple response variable)
- You want to create a KPI summary from a mix of other variables
- You want to only consider a subset of variables from a larger array
The process is fundamentally the same as the above:
- Open the array builder using the + New Variable in the bottom left
- Selecting either Multiple Response or Categorical Array
- Selecting or dragging the variables you want to include
- Switching between Multiple Response or Categorical (if necessary).
- If a multiple response variable, ensuring you check the boxes to 'count'
Remember you also have the option to:
- Remove variables from the selection, by clicking the little 'X' that appears on the right-hand side of the bar
- Select individual variables from an existing array, by expanding the array in the Variable Organizer using the little '+' that appears
- Checking the boxes to count in a multiple response however you like (for example, you may wish to select a 'top box' for one variable, but a 'bottom box' on another sub-variable, in the case where scales may involve negative statements and you want to inverse the selection)
Further notes:
Aliases:
- The grouped variable has it's own alias in addition to the sub-variables (although you can only see the overall variable alias in the web app).