Transpose Advanced¶
Transpose Node
Type¶
transform
Class¶
fire.nodes.etl.NodeTransposeColumns
Fields¶
Name |
Title |
Description |
|---|---|---|
transpose |
Transpose |
|
keyCols |
Key Columns |
Columns to keep fixed (identifiers) |
dataCols |
Data Columns |
Columns to unpivot (convert to rows) |
inputColumnPropagation |
Select all fields as Data Columns |
When enabled, automatically include all unspecified input columns as data cols leaving selected key cols. |
schema |
InferSchema |
|
outputColNames |
Column Names of the Table |
Output Columns Names of the Table |
outputColTypes |
Column Types of the Table |
Output Column Types of the Table |
outputColFormats |
Column Formats |
Output Column Formats |
Details¶
This node creates a DataFrame by transposing (unpivoting) the incoming DataFrame.
It converts selected data columns into rows, preserving key columns, and creates new columns for the original column names (Name) and their corresponding values (Value).
When Input Column Propagation is enabled (inputColumnPropagation = True), the node automatically treats all non-key columns as data columns.
This means any new or unknown columns appearing in the input will also be included in the transpose operation without requiring reconfiguration.
Examples¶
### Example 1: Standard Transpose
Incoming DataFrame:*
DEPT | NEW JERSEY | NEW YORK
---------------------------------------------------
FRONT DESK | 1 | 1
MARKETING | 1 | 1
HR | 0 | 1
SALES | 1 | 0
MAINTENANCE | 1 | 1
Configuration:*
KEY COLUMNS : DEPT
DATA COLUMNS : NEW JERSEY, NEW YORK
INPUT COLUMN PROPAGATION : False
Output DataFrame:*
DEPT | Name | Value
---------------------------------------------------
FRONT DESK | NEW JERSEY | 1
FRONT DESK | NEW YORK | 1
MARKETING | NEW JERSEY | 1
MARKETING | NEW YORK | 1
HR | NEW JERSEY | 0
HR | NEW YORK | 1
SALES | NEW JERSEY | 1
SALES | NEW YORK | 0
MAINTENANCE | NEW JERSEY | 1
MAINTENANCE | NEW YORK | 1
---
### Example 2: With Input Column Propagation Enabled
Incoming DataFrame:*
DEPT | NEW JERSEY | NEW YORK | CALIFORNIA | TEXAS
---------------------------------------------------------------------------
FRONT DESK | 1 | 1 | 0 | 1
MARKETING | 1 | 1 | 1 | 1
HR | 0 | 1 | 0 | 1
SALES | 1 | 0 | 1 | 0
Configuration:*
KEY COLUMNS : DEPT
DATA COLUMNS : (not explicitly selected — auto-inferred)
INPUT COLUMN PROPAGATION : True
Explanation:*
Since propagation is enabled, all non-key columns (NEW JERSEY, NEW YORK, CALIFORNIA, TEXAS)
are automatically considered for transposition.
Output DataFrame:*
DEPT | Name | Value
--------------------------------------------
FRONT DESK | NEW JERSEY | 1
FRONT DESK | NEW YORK | 1
FRONT DESK | CALIFORNIA | 0
FRONT DESK | TEXAS | 1
MARKETING | NEW JERSEY | 1
MARKETING | NEW YORK | 1
MARKETING | CALIFORNIA | 1
MARKETING | TEXAS | 1
HR | NEW JERSEY | 0
HR | NEW YORK | 1
HR | CALIFORNIA | 0
HR | TEXAS | 1
SALES | NEW JERSEY | 1
SALES | NEW YORK | 0
SALES | CALIFORNIA | 1
SALES | TEXAS | 0
Result:*
The node automatically includes all new fields without requiring updates to the configuration.