# Correlation Pairs To Matrix

The Correlation Pairs to Matrix node is designed to take a list of Input Correlation Pairs and convert it into an equivalent Correlation Matrix.

The Correlation Matrix represents the degree of Horizontal Differentiation between Features, Benefits, Attributes, Levels, and Products. The Correlation Matrix may be used by a downstream node (such as the Matrix Distributions node or the Feature Generation node) to generate a set of Customer Distributions comprising the Willingness To Pay (WTP) of individual Virtual Customers.

For example, the list of Input Correlation Pairs would individually list the correlations between the ‘A’, ‘B’, and ‘C’ Customer Distributions as A:B, A:C, and B:C pairs. The Output Correlation Matrix would then be a 3×3 matrix of the same correlation values (doubles between -1.0 and +1.0) with row names and column names of A, B, and C. The matrix describes all the correlations between Customer Distribution A, Customer Distribution B, and Customer Distribution C.

The Input Correlation Pairs will first be converted into a clean and symmetrical Correlation Matrix. That means: (a) the diagonal A:A, B:B, C:C correlations will be set to 1.0; (b) correlation values will be limit-ranged to between -1.0 and +1.0; (c) missing correlations will be set to 0.0; and (d) the correlation for A:B will be set the same as the correlation for B:A. The correlation values a the bottom of the Input Correlation Pairs table will supersede correlation values at the top of the input table.

The purpose of this node is to provide the user with flexibility when setting and managing the Horizontal Differentiation (correlations) between Customer Distributions. A downstream Feature Generation node or a downstream Matrix Distribution node both require an Input Correlation Matrix to generate a set of Customer Distributions. With this node, the user could edit the Correlation Pairs list, scale the Correlation Pairs list so that each Customer Distribution was more-or-less correlated with other Customer Distributions, or concatenate the Correlation Pairs list with another set of correlations developed elsewhere. Working with a list can be easier than working with a matrix.

This Community Node documentation assumes you have already downloaded the open-source KNIME analytics platform and installed the free Market Simulation (Community Edition) plugin. If not, start by returning to Getting Started.

# #1 Simple Conversion

The list of Input Correlation Pairs is converted to a Output Correlation Matrix.

## Inputs

#### Correlation Pairs

The Input Correlation Pairs can be generated by a ‘Table Creator’ node or a ‘Correlation Matrix To Pairs’ node.

## Node

#### Configuration

No configuration is required.

## Outputs

#### Correlation Matrix

An Output Correlation Matrix is built from the inputs.

# #2 Repair Matrix

This Correlation Matrix needs to be repaired. Why? Because the user has set ‘First’ to be highly correlated to ‘Second’ and ‘Third’, but the user has also set ‘Second’ to have a low correlation with ‘Third’. It is not possible for ‘Second’ and ‘Third’ to both be highly correlated to another distribution but not to each other.

## Inputs

#### Correlation Pairs

• First ≈ Second
• First ≈ Third
• But Second ≠ Third

## Node

#### Configuration

No configuration is required.

## Outputs

#### Output Matrix

The Output Correlation Matrix is built directly from the list of Input Correlation Pairs.

#### Repaired Matrix

The Output Correlation Matrix repaired so that it best reflects the intention of the inputs but is also logically consistent.

#### Error Matrix

The Output Error Matrix contains the difference between the Output Correlation Matrix and the Output Repaired Matrix. This shows how the Correlation Matrix was repaired.

# #3 Edit Correlations

Shows how to override the old Input Correlation Matrix with new correlation values.

## Inputs

#### Concatenation

The top half of the Input Correlation Pairs contain the old values. The bottom half (highlighted grey) contain updated values that will override the old values.

## Node

#### Configuration

No configuration is required.

## Outputs

#### Output Matrix

The new correlation values (at the bottom of the table) have overridden the old correlation values (at the top of the table).