The row punch summary
tag creates a summary variable for tables.
Similar to collection punch summary
, row punch summary
is considered a summary variable that "rolls up" the data.
1. How familiar are you with the following?
row punch summary: QFAMILIAR. Familiar Q1 {if anyChecked($Q1R[id],3)}
row punch summary: QUNFAMILIAR. Unfamiliar Q1 {if anyChecked($Q1R[id],1)}
type: radio table
1. Never heard of
2. Heard of, not that familiar
3. Familiar
rows:
1. Advance Auto Parts
2. AutoZone
3. Napa Auto Parts
4. Pep Boys
5. O’Reilly Auto Parts
Details
- Apply
row punch summary
to a table with rows and options. This tag is not applicable to vscale tables. - The tag's input includes the label (ID) and description of the summary variable it creates, followed by a condition that defines the criteria for punching the summary variable.
- Inclusion and exclusion filters can be added immediately after the label and description.
- Multiple
row punch summary
tags can be included on a single table. - A row punch summary variable can be designated as a "reporting only" variable by including the
reporting only: y
decorator.
Note: Row punch summary variable labels do not include the leading 'Q' by default. If a leading 'Q' is desired, be sure to include it in label, as shown above.
Additional examples
Including or excluding rows
To include or exclude a row, insert the inclusion/exclusion filter after the reporting description, before the condition
decorator. In the example below, only rows 1, 2, and 3 can be punched for QFAMILIAR.
1. How familiar are you with the following?
row punch summary: QFAMILIAR. Familiar Q1 [1..3] {if anyChecked($Q1R[id],3)}
type: radio table
1. Never heard of
2. Heard of, not that familiar
3. Familiar
rows:
1. Advance Auto Parts
2. AutoZone
3. Napa Auto Parts
4. Pep Boys
5. O’Reilly Auto Parts
Adding quotas
You can include quotas: y
as a decorator on the row punch summary
tag to create a quota based on the summary field. In the example below, the row punch summary
tag creates a summary variable called QFAMILIAR, and a quota called QFAMILIAR_QUOTA is added to the Quotas applet.
2. How familiar are you with the following? row punch summary: QFAMILIAR. Brand Familiarity {if anyChecked($Q2R[id],3)} {quotas: y} type: radio table 1. Never heard of 2. Heard of, not that familiar 3. Familiar rows: 1. Adidas 2. Nike 3. Reebok
Referencing option data
If the table's rows include option data, it can be referenced in the row punch summary
condition. In the example below, the LOCAL option data is referenced in the condition within square brackets.
set list: BRANDS 1. Fisher-Mills {{LOCAL: 1}} 2. Heaney {{LOCAL: 0}} 3. Armstrong {{LOCAL: 1}} 3. How satisfied are you with the following? row punch summary: QLOCAL_SAT. Local brands satisfied {if anyChecked($Q3R[id],3) and [LOCAL]==1} type: radio table 1. Unsatisfied 2. Neutral 3. Satisfied rowsfrom: BRANDS
Using with 'unstackfor'
row punch summary
can also be combined with the unstackfor
and unstackby
tags to unpack stacked data and summarize helpful groupings such as Top 2 and Bottom 2 boxes.
set list: BRANDS 1. Brand 1 2. Brand 2 3. Brand 3
4. Imagine many more brands here set list: STATEMENTS 1. Statement 1 2. Statement 2 3. Statement 3 4. Statement 4 5. Statement 5 set list: AGREE 1. Strongly disagree 2. Disagree 3. Somewhat disagree 4. Somewhat agree 5. Agree 6. Strongly agree 2_BRANDS. Two brands type: coded multiple select
selectby: counts maxgroups: 2 opts from: BRANDS BRANDA. Brand A type: coded single select opts from: BRANDS {if anyChecked($Q2_BRANDS,[id])} BRANDB. Brand B type: coded single select opts from: BRANDS {if anyChecked($Q2_BRANDS,[id]) and noneChecked($QBRANDA,[id])} set list: SEL_BRANDS unstackfor: BRANDS 1001. $QBRANDA_text {desc: Brand A} 1002. $QBRANDB_text {desc: Brand B} start group: be1q loop for: STATEMENTS BE1. ~text~ preface: Brand Equity type: radio table rows from: SEL_BRANDS opts from: AGREE row punch summary: QBE1_TOP2 {if anyChecked($QBE1R[id],5,6)} row punch summary: QBE1_BOTTOM2 {if anyChecked($QBE1R[id],1,2)} end group: be1q
Comments
0 comments
Please sign in to leave a comment.