Using roster questions

Roster surveys in mWater
Some complex surveys require you to build rosters, or lists of items that may need to be referenced again later in the survey. The most common example is in a household survey where you want to make a list of each household member and collect some basic information about them, such as their age and marital status. Later on in the survey, you might want to recall the list and ask some additional questions such as health problems or educational status. In this article, we explain how to create rosters, use them in matrix questions and question groups, and export or visualize roster data.
Contents

Create a new roster using a Roster Matrix

The roster matrix allows your enumerators to build a roster line by line, while also asking a set of questions about each member in a compact table format that is similar to many paper-based surveys. 
To add a roster matrix:
  1. Click on +Add -> Roster Matrix
  2. Give the new roster a Name. This will be the name that will be used to refer to the roster throughout the rest of the form.
  3. Click on + Add Column to add questions you will ask about each member of the roster. These columns will appear as separate questions on export.
  4. Click on Save after adding all columns.
Pro Tip: You can test out your new matrix while still in the Design tab. Just click on the + Add button that appears at the bottom of the question.
Click + Add to create new Roster Matrix
Click + Add to create new Roster Matrix
Adding columns to a new roster matrix
Adding columns to a new roster matrix

Matrix column types

The following types of questions can be added as columns in a roster matrix. If you need to add other types of questions, use a Roster Group.
  • Text question
  • Number (decimal or integer)
  • Checkbox
  • Dropdown
  • Units
  • Site
  • Date
  • Text (use this to display static text or an expression)

Column options

Video: Creating a new roster using the Roster Matrix question

Create a Roster using a Roster Group

There are certain situations where the questions or answer choices are too long to fit inside a Matrix Question or you need to ask question types that are not available in a matrix, such as photo questions or dates. The Roster Group allows you to repeat the same set of questions for each member of a roster. Any rosters that you create using a Roster Group can be used later in the form in either a Roster Matrix or Roster Group, if you need to ask more questions. 
To add a Roster Group:
  1. Click on +Add -> Roster Group.
  2. Give the new roster a Name - this will be how you identify the roster in later questions or on export.
  3. Click Save and then start adding questions inside the group, which is outlined by a light grey box.
In the example below, a Roster Group was created to list all the water sources used by a household and take photos of each one. The questions inside the grey box will repeat each time the user clicks on the +Add button.

Use a roster later in the survey

Rosters that you created using a Roster Matrix or Roster Group can be used again later in the same form. This allows you to ask new questions about the same roster members. Note that rosters are part of the response to the form; they are not accessible from other forms.

Ask new questions about an existing roster using a Roster Matrix

  1. Click +Add -> Roster Matrix
  2. Select the name of the existing roster under Roster to use
  3. Choose a name for the new matrix question
  4. Decide whether the enumerator can add or remove entries from the previous roster; you might not want to allow this if you want to make sure that the earlier questions also are asked of any new members added to the roster here (they can always go back to the previous roster matrix in the form and add/remove members if needed)
  5. Add a Text column so that enumerators will know which member of the roster the new questions are referring to. See Display columns from previous rosters below for more information on how to do this
  6. Use +Add Column to add additional questions about the roster members

Display columns from previous rosters in a new matrix

When you use an existing roster in a later question, it is helpful to include one of the previous columns for reference. Usually this will be the name of the household member or some identification code. The Text column allows you to insert the answer to a previous roster question, or even perform calculations and logic, using mWater Expressions.
To insert the answer to a previous roster question:
  1. From the Roster Matrix popup, click on +Add Column -> Text
  2. Name the column by filling in the Header box
  3. Click on the small fx symbol to the right side of the Text to Display box
  4. From the Insert Expression box, select the name of the column from the original roster that you want to include, then press Insert

Roster matrix calculations

If you want to display calculated values in a roster matrix, for example to show a currency conversion, you can first create a survey level calculation and then access it in the roster matrix. 

  1. From the top right of the survey page select Calculations
  2. +Add Calculation and select the appropriate roster matrix from the dropdown
  3. Create the expression. This will create a calculated value for each roster matrix row 
  4. In the roster matrix add a Calculation and pick out the calculation you've created

Ask new questions about an existing roster using a Roster Group

  1. From the Design tab, click on +Add -> Roster Group
  2. Select the name of the existing roster for the Roster to Use
  3. Enter the name for this new question group in Name
  4. Give a name to place in the title of each repeated group by clicking on the fx symbol on the right of the Title for each entry box and choosing a column to use from the existing roster (see the previous section for more detail on this topic)
  5. Click on Save
  6. Add questions inside the newly created group (the group is outlined with a grey box); these questions will be repeated for each member of the existing roster
See the next section on how to insert names and other data to personalize questions.
Using an existing roster in a new Roster Group
Using an existing roster in a new Roster Group

Insert names and other roster data into questions

You can reuse names and other information that was asked about a roster member by inserting an Expression. Click on the fx symbol to the right of a text box to open the Expression tool. Here you will see the names of previous questions asked about the members of this roster, as well as more advanced options like if/then statements or calculations. Watch the video below to see how Expressions can be used to personalize questions asked of each member of a roster.

Exporting and visualizing roster data

Roster data can be challenging to work with because there are a varying number of roster members for each survey response. mWater solves this problem by treating each roster like a separate data table that is contained within the survey response. There are powerful tools within mWater to work with rosters to summarize data and present it in tables and graphs, but you can also export the data and work with it using your own statistical analysis software. Exported data is kept tidy and in a format that will make it easier to import to other software packages.

Visualize Roster data

The examples below will use a Survey form with two and a roster group containing 3 questions. The objective of the form is to track training seminars and their participants.
Survey form: Training Form
Roster Group: Participants
Survey Responses
Roster Rows

Displaying individual rows of a roster

When a survey is added to a data visualization e.g. Dashboard, it will automatically add all Roster matrices/groups also. These will show up in the data source selector as [survey_name]: [roster_name] e.g. Training Form: Participants.
To create visualization of the roster questions:
  1. Select the Roster from the data source
  2. Use the roster data source just like any other data source
  3. The resulting visualization will display one line for each row of the roster

Note: The table widget above displays one row for each row of the Participant roster INSTEAD OF one row for each Training Form response.

Calculating aggregate data from a roster

Users can also calculate aggregates from a roster group. For example, we may want to know the total number of participants, by organization. This can be done either from the Survey Response OR from the Roster data source.
Roster data source
Data Source = Training form: Participants
When aggregating data for a roster, it's typically easier to use the Roster data source than the Survey data source.
The example below shows the number of participants, by Organization type.
To create the above table from a pivot widget:
  1. Select the Training Form: Participants data source
  2. Select Rows = Organization type

Calculating aggregate data from a survey response

Survey data source
Data Source = Training form
Rosters can also be aggregated and visualized by using the Survey form data source to which they belong. This is typically recommended when the majority of the data to be displayed is in the Survey form, and a limited amount of Roster data will be aggregated for each form. 
The example below shows the number of participants from the Participants roster, for each Training form response.
To create the above table from a pivot widget:
  1. Select the Training Form data source
  2. Select Rows = Training name
  3. Set Value = Latest Participants > Number of Training Form: Participants Note: this can be done simply by selecting the Participants question and clicking "Number of participants"

Visualize roster data from the Survey page

1) On the Design tab, each roster matrix/group contains one or many questions:
    a) Name
    b) Phone number
    c) Organization type
2) On the Visualization tab the roster matrix/group is contained its own section. Each question in the roster gets its own visualization depending on its type.
Note: Questions within a roster can be added to the Survey report in the same manner as other question types, by clicking the "Add to Survey Report" button.