Feature Table To List
The 'Feature Table to List' node is designed to rotate a wide table of Product Features and convert it into an equivalent list of Product-Feature Pairs.
Input: Product1 Feature1 Feature2 Feature3 Feature4 Feature5 Output: Product1 Feature1 Product1 Feature2 Product1 Feature3 Product1 Feature4 Product1 Feature5
The 'Feature Table to List' node is typically used upstream of a 'Product Generator' node. The 'Product Generator' node expects to receive an 'Input Product Features' table as two-column list of Product-Feature pairs. However, it is often easier for a user to manage Product Features (in Excel) as a wide table where each column represents a different high-level Attribute.
For example, a user may prefer to manage the Features that make up various ice cream Products in a wide table having the column headings: Product, Flavor, Color, Packaging, Size, and Toppings. For the 'Product Generator' node to be able to process this table, the data would first need to be converted into a list with two columns: Product, Feature.
- Type: Data Input Feature Table: The input set of Features that define each Product in the format of a wide table. The Input Feature Table should include the following columns:
- Product (string): The name of each Product in the Market. Products found in each row of the Input Feature Table are typically unique, with the list of Features associated with each Product listed in the same row. But the uniqueness of Product names is not checked, and duplicate rows will also be appended to the Output Feature List. Rows with missing Product names will be skipped. If the 'Product' column is missing then the 'RowID' will be used instead.
- List of Feature Columns (string): (optional) All of the other columns in the Input Feature Table can correspond to the different Features associated with each Product. It would be most common for all of these Feature columns to be of type 'String' but other types are also allowed to provide the user with greater flexibility. The user-selected Feature columns will be saved in the 'Feature' column in the Output Feature List. The heading names of the user-selected columns will also be saved in the 'Attribute' column in the Output Feature List. Column cells with missing Features will be skipped.
- Price (double): (optional) The Price of the Product. This Price will be converted into a String value just like the other List of Features and included in the Output Feature List. But the Product Generator node will recognize the Price Feature as being special, and will use it to set the Price in the Output Product Array.
- Cost (double): (optional) The Cost of the Product. This Cost will be converted into a String value just like the other List of Features and included in the Output Feature List. But the Product Generator node will recognize the Cost Feature as being special, and will use it to set the Cost in the Output Product Array.
- Quantity (integer): (optional) A reference Quantity sold for the Product in the actual (real-world) Market. This Quantity will be converted into a String value and, like Price and Cost, will be recognized by the Product Generator node as being a special Feature. If the Quantity is provided in a downstream Market Simulation node then a 'Quantity Error' can be calculated as part of the results in the Output Product Array.
- Type: Data Output Feature List: The equivalent set of Features listed as Product-Feature pairs. The Output Feature List will contain these columns:
- Product: The Product names found in the Input Feature Table.
- Attribute: The column headers from the Input Feature Table for the Features that were selected by the user for inclusion. These column headers typically describe the high-level Attribute type for the Features found within each the Product. For example, for ice cream Products, the Attributes may include: Flavor, Color, Packaging, Size, and Toppings.
- Feature: The list of Features associated with each Product found within the user-selected columns in the Input Feature Table.