Filtering Array options based on answers to previous questions

Sometimes it is useful to show only some rows in an Array, based on the response to a previous survey question, as show in this animation:

The Array filter under Advanced settings allow you to use any multiple choice question to select or set which responses display in a subsequent list, array or multiple choice question.

Subsequent questions can be filtered on any array question types, including:
  • Multiple choice
  • Multiple choice with comments
  • Multiple short text
  • Multiple numeric
  • Array (5 point, 10 point, Yes/No/Unknown, Increase/Same/Decrease, Column)
  • Array (Dual Scale, Text, Numbers)
  • Ranking

Furthermore, each of these types of questions can be filtered.

The only exception is Array (Column), which can filter other questions, but can not itself be filtered.

To set a filter

Enter the question code of a multiple options question to use as the source information into the setting for array filter. For example, if your source multiple option question code is "Q1" enter "Q1" into either the 'Array Filter' field or the 'Array Filter Exclusion' field in the Advanced settings of the question you want to filter. Only answer options that are selected in question Q1 will be visible in the array_filter-ed question.

You can also enter multiple array_filter options for a single question, separated by semicolons.

Array filter question settings require the questions being used to have exactly matching lists of answers. If the questions do not have exactly the same set of answers and codes, then the filters will break.

If Q2 has sub-questions that are not present in Q1, they will always be displayed rather than breaking the filters.

Cascading

The Array filter will cascade – that is you can select a question which filters another question, which filters another question, and so on.

Array Filter Example

In our example, ticking items ‘AM’, ‘PM’ and ‘Other’ in the first question results in the entries 'AM', 'PM' and 'Other' displaying in the subsequent question which uses the array filter.

Here's our first question : Code:Q1 - What time of day do you like to go for walks?

And here's what our sub-answers look like:

And then we have an Array (texts) question : Code Q2 - How many minutes do you walk for?

In the Advanced settings, we specify the first question's Question Code of Q1.

And our sub-answers look like this -- note how the Codes SQ001, SQ002... match with the codes in Question 1:

You can click here to download a question group example that you can import into your own survey to try it out.

We greatly appreciate your feedback.




Powered by LiveZilla Helpdesk