Crosstabs

Drag to crosstab one or many elements

Create crosstabs in Protobi by dragging the label of one element onto another:

Crosstab table showing happiness ratings (rows) crossed with health ratings (columns). The table displays percentage distributions with blue shading highlighting higher values, particularly showing that people who are very happy tend to rate their health as excellent (50%) or good (28%).

Crosstab elements individually

Drag + drop

Drag one element (q1) to the heading of another (q2) to create a crosstab. The element you drag will define the columns (or "banner"), and the other will define the rows (or "stub"). 

To remove the banner, press the small red x on the banner pill.

Drop-down menu

Press on the + sign on any element to choose from a list of crosstab banners. The crosstab banners in the drop-down are based on the element you add to your "banners" tab.

Drag elements from the tree to crosstab

You can also drag from the element tree on the left. This is useful when crosstabbing variables that are not on the same tab.

Protobi interface showing the left navigation tree and main data view with multiple questions displayed. Question q15a shows a crosstab by q1 (happiness) with sections q15a through q15d visible, demonstrating how to drag elements from the tree to create crosstabs across different tabs.

Crosstab elements globally

Drag onto the the "Crosstab"  button in the toolbar to define a global banner.  Any elements and charts that can take a banner variable will be crosstabbed.

To remove, click on the crosstab button, and select "none"

Crosstab with two banner variables

Elements can take up to two crosstab banners. Once an element is crosstabbed by one banner, a second "+" button appears, and you can drop another banner. 

Question Q1 header showing two crosstab banner pills (S1 and S3) with a plus button available for adding banners. The question reads "Thinking about your Condition X patients, how many of those are currently receiving a GA (gamma antagonist)?"

The columns are sorted by the first level banner, and then the second. 

Crosstab table for question S2 about nurse grade, showing nested column headers with S1 (specialty) as the first level creating two main groups (General Practitioner and Practice Nurse), and S3 (practice start year) as the second level subdividing each specialty into five time periods.

If you double click on either banner, it will switch the order:

Crosstab table for S2 showing the banner order switched from the previous image. Now S3 (practice start year) is the first level creating major column groups, with S1 (specialty) as the second level subdividing each time period into General Practitioner and Practice Nurse columns.

Global crosstab with two banner variables

You can apply two crosstab banners globally. Drag the first banner to the crosstab button, then start dragging the second banner over. Before you drop the second banner, hold down the shift key.

This should allow the crosstab button to take both banners:

Protobi interface showing the left sidebar with element tree navigation and main workspace displaying Section 1 with multiple questions. The workspace shows question Q1 about Condition X patients with a nested crosstab structure using both S1 and S3 as global banners, demonstrating the dual-banner global crosstab applied across all visible questions.

When you create a global crosstab with two banner variables, an option to "swap" will appear. Below, the project is crosstabbed by specialty (S1) first, then practice start (S3). Press swap to crosstab by S3 first, then specialty.  

Crosstab control interface showing a tooltip that reads "Drag one element here to crosstab all elements" with instructions to "Drag a 2nd while holding shift". Below are two interactive elements: a "swap" button enclosed in a dashed border and a "clear" button.

Hide crosstab banner columns

Globally

Open the format dialog and select the "Hide" option for the values you want to hide. 

Edit format dialog showing a table with columns for Value, Format, Mean, Sort as, Sort last, Hide, Bar, and Remove. Five rows represent time periods from practice start years. The Hide column shows checkboxes with the first two values (Before 2000 and 2000-2009) checked to hide them globally.

On select questions

Right click on a banner column to optionally hide the category for a question. For instance in the table below, Q1 is crosstabbed by both S1 (Specialty) and S3 (Practice start year). 

If you right click on "Before 2000" you can hide that column for Q1 only. It will not affect other tables where S3 is used as a banner. 

Note you can not selectively hide the "Before 2000" under General Practitioner but not hide the same category under Practice Nurse. You can right click on "Practice nurse" and it will hide all banner columns nested under it. 

Crosstab table showing question Q1 with a "Suppress For" dialog box overlaid. The dialog indicates that value 1 representing "Before 2000" will be excluded from Q1 when crosstabbed by Q1, demonstrating selective column hiding for individual questions.

To remove suppressed values, open the context menu for the banner (S3) and select "Suppress For". Note: this menu item will only appear if the banner already has values suppressed for a specific question. 

Context menu dropdown showing various element options including Chart type, Round by, Statistics, Color, Format, Filters, Recode, with "Suppress For" highlighted. The menu includes keyboard shortcuts like E H, E B, E S, etc. for each option.

This will take you to the Suppress For dialog where you can select/deselect the values hidden per Element. 

Note: if you select values on the banner's element row (S3), then the values will be hidden on every element where S3 is used as a crosstab. This is the same result as using the format dialog to hide values. 

Suppress For dialog showing a table with Elements (S3 and Q1) as rows and time period values as columns. The Q1 row shows "Before 2000" checked, indicating this value is suppressed for Q1 only. Other values (2000-2009, 2010-2014, 2015-2019, 2020-) are unchecked.

Crosstab significance tests

Admins can change crosstab significance tests in Project properties. The default mode is Complement testing.

Project properties dialog showing configuration options including P-value for sig tests (0.05), Toolbar position (top), and Crosstab significance tests dropdown menu expanded with options for Pairwise and Complement (default, currently selected).

Complement

In Complement testing, each column is compared with the average of all other columns (excluding itself). Blue cells indicate the value is significantly higher in the specified column compared to all other columns, and grey indicates significantly lower. 

Crosstab table showing q2 (health rating) by q1 (happiness) with complement significance testing applied. Blue shading highlights cells significantly higher than average (like 41.3% excellent health among very happy people), while gray/lighter shading indicates significantly lower values (like 1.2% poor health among very happy).

Pairwise

Pairwise testing compares each column with each other individual column. This mode shows detailed superscripts like a traditional crosstab. 

Below we see that the percentage of respondents who rated their health as "Excellent" is much higher in column A (Very happy) than columns B, C or D. 

Crosstab table identical in layout to the previous image but now displaying pairwise significance testing. Each percentage value includes letter superscripts (like BCD, C, AC, ABD) indicating which specific columns it differs significantly from, providing traditional crosstab comparison notation.

Note: Protobi limits significance testing to N>=10 to avoid testing when the sample size is too small. 

Video Tutorial

Crosstabs