The balanceby
tag is in conjunction with selectby: balance
and can be added to a closed-end question to instruct the software to balance the assignment of a value to the question by a nesting of the questions following the tag. Questions with a balanceby
tag are hidden from respondents and are punched by the system upon submission of the form where they are located.
Background
Suppose researchers want to assign survey content (whether questions, brands, or stimuli) to respondents in a random and balanced fashion. Typical randomized content could include:
- Section assignment (e.g., 'Show respondents either Section F or Section G.')
- Videos (e.g., 'Show each respondent one of the 4 videos.')
- Concepts (e.g., 'Show each respondent 2 of the 8 concepts.')
- Brands (e.g., 'Pick 2 brands from among those that he is aware of.').
The picking process is often denoted as being "random." However, often, it really isn't intended to be random – researchers will have notes like "get a good balance".
Historically, many Survey Programmers (SPs) have handled this problem class by creating a quota or assignment variable that expanded the combinatorial spew for each content. So, if a researcher asked to balance 3 concepts by the variables AGE (4 categories), GENDER (2 categories), REGION (4 categories), and PANEL (3 categories), SPs would create a "balancing assignment" variable with 3 (Concepts) x 4 (AGE) x 2 (GENDER) x 4 (REGION) x 3 (PANEL) = 288 possible values. This wasn't an ideal solution because
- The combinatorial spew slows down the server.
- Expanding the nest results in occasional typos which can lead to some respondents not being properly assigned.
- The reports are difficult to understand and are burdensome to wade through the amount of variables and fields.
With balanceby
, Project Managers (PMs) can simply solve the problem class above easily with balanceby: QAGE, QGENDER, QREGION, QPANEL
.
With this approach, when a respondent arrives, the system will retrieve the current counts for the respondent's categories for each of the balanced variables. The system will then make the selection that results in the best overall balance for each of those categories. Of course, with multiple "balance by" questions, in some cases, one selection might improve the balance for say AGE, but make it less balanced for some other category like GENDER. The system uses a "least squares" approach in order to optimize the balance. This generally gives better results and is computationally quicker than trying to manage quotas for a combination of variables. Furthermore, adding more variables to the balance by
list generally does not add much computation – just the retrieval of the one set of additional counts during the balancing calculation.
balanceby
can easily choose multiple options if attached to a checkbox question type along with the maxgroups
tag.
Tip! The variables used to define balanceby
must be radio questions/variables or single-select quotas.
Examples
Priorities
If one particular "balance by" variable needs to be more important than others, you can use the following type of syntax:
balance by: QAGE(2), QGENDER
In this example, the QAGE balance will be twice as important as the QGENDER balance. Essentially the difference from the target for QAGE will be doubled when determining which option to select. You can use priorities on any of the balance by
items. The relative values are the only significant factor, so balance by: QAGE(4),QGENDER(2)
is functionally equivalent to balance by: QAGE(2),QGENDER
.
Quotas
For a quota variable, the target balance is based on the relative size of the quotas. For example, suppose you have this variable:
B. Brand selection type: quotas selectby: balance balanceby: QAGE 1. Brand A 2. Brand B
Further suppose that Brand A is assigned a quota of 300, and Brand B gets a quota of 100. In this case, the target balance is 3 to 1. So the system will select brands in order to get closest to this balance, rather than the default even balance. For non-quota variables, or for quota variables with no quotas yet assigned, the target balance is always evenly spread across all quota options.
Complete example
The example below balances QPATH by QAGE, QGENDER, QREGION, and QPAN. The screenshot on the right is a Crosstab report demonstrating how the QPATH assignment is balanced within each of those fields.
Code | Crosstab report |
PAN. Panel |
Comments
0 comments
Please sign in to leave a comment.