Working with Multiple-Response Data
A number of comparison functions can be used to analyze multiple-response data, including:
-
value_at
-
first_index / last_index
-
first_non_null / last_non_null
-
first_non_null_index / last_non_null_index
-
min_index / max_index
For example, suppose a multiple-response question asked for the first, second, and third most important reasons for deciding on a particular purchase (for example, price, personal recommendation, review, local supplier, other). In this case, you might determine the importance of price by deriving the index of the field in which it was first included:
first_index("price", [Reason1 Reason2 Reason3])
Similarly, suppose you have asked customers to rank three cars in order of likelihood to purchase and coded the responses in three separate fields, as follows:
customer id | car1 | car2 | car3 |
---|---|---|---|
101 | 1 | 3 | 2 |
102 | 3 | 2 | 1 |
103 | 2 | 3 | 1 |
In this case, you could determine the index of the field for the car they like
most (ranked #1, or the lowest rank) using the min_index
function:
min_index(['car1' 'car2' 'car3'])
See the topic Comparison Functions for more information.
Referencing Multiple-Response Sets
The special @MULTI_RESPONSE_SET
function can be used to
reference all of the fields in a multiple-response set. For example, if the three car fields
in the previous example are included in a multiple-response set named car_rankings, the
following would return the same result:
max_index(@MULTI_RESPONSE_SET("car_rankings"))