Automated migration results
When Import detects an Alteryx Cross Tab tool, it generates a Pivot gem configured to match the Cross Tab settings:- Group-by fields in Alteryx are mapped to the Pivot gem’s Row Grouping Settings.
- The selected Column Headers field in Alteryx is used as the pivot column.
- The Values for New Columns field is used as the pivot value.
- The selected aggregation method (for example,
Sum,Count,Min, orMax) is mapped to the Pivot gem’s aggregation function. - Output column names are derived from the pivoted values.
Manually replicate in Prophecy
To reproduce Cross Tab behavior manually:- Add a Pivot gem to the canvas.
- Configure the Group by columns (these define the output row grain).
- Select the column whose values should become output columns.
- Select the column containing values to aggregate.
- Choose an appropriate aggregation function.
Configuration options
In Alteryx (Cross Tab tool)
Configure the tool by selecting:- Group data by these values (row identifiers)
- New column headers (field whose values become column names)
- Values for new columns (field to aggregate)
- Aggregation method (Sum, Count, Min, Max, First, etc.)
- Optional: handling of nulls and missing combinations
In Prophecy (Pivot gem)
Configure the Pivot gem by specifying:- Row Grouping Settings (corresponding to Alteryx group-by fields)
- Pivot Column Settings (values become output column names)
- Value for New Columns (values to aggregate)
Output behavior
- Alteryx outputs one row per group, with new columns created from distinct values in the pivot field.
- Prophecy outputs the same wide, pivoted structure, with one column per pivot value and aggregated results in each cell.
Known caveats
- Dynamic columns: Both tools generate output columns based on data values. Changes in the underlying data can alter the output schema.
- Aggregation required: Pivoting inherently involves aggregation; non-aggregated values must be reduced using an aggregation function.
- Wide outputs: Large numbers of pivot values can result in very wide schemas, which may impact readability or downstream processing.
- Null handling: Missing combinations typically produce nulls and may require downstream handling.
Example
Goal: Create one row perorder_id, with separate columns for each category, summing amount.
Input dataset
| order_id | category | amount |
|---|---|---|
| 1 | A | 10 |
| 1 | B | 5 |
| 2 | A | 7 |
| 2 | B | 3 |
Alteryx Cross Tab tool
- Group data by:
order_id - New column headers:
category - Values for new columns:
amount - Aggregation method: Sum
Prophecy equivalent (Pivot gem)
Configure a Pivot gem with:- Group by:
order_id - Pivot column:
category - Value column:
amount - Aggregation:
sum
Resulting output
| order_id | A | B |
|---|---|---|
| 1 | 10 | 5 |
| 2 | 7 | 3 |

