Instances of the InputVariableCorrelator class are used to induce a desired rank correlation among input variables.

Namespace:  CenterSpace.NMath.Stats
Assembly:  NMathStats (in NMathStats.dll) Version: 3.4.0.0

Syntax

C#
[SerializableAttribute]
public class InputVariableCorrelator : ICloneable
Visual Basic (Declaration)
<SerializableAttribute> _
Public Class InputVariableCorrelator _
	Implements ICloneable
Visual C++
[SerializableAttribute]
public ref class InputVariableCorrelator : ICloneable

Remarks

Consider two sequences of random numbers {ai} and {bi}, i = 1, 2,...,N which may follow any probablility distributions. For example the {ai} may be a sequence of normally distributed random numbers while {bi} might be a sequence of random numbers following a beta distribution. In general these sequences will be uncorrelated, especially if they come from pseudo random number generators. Suppose that you are running a simulation on an economic model that works with mortgage backed security prices and U.S. Treasury bond prices as inputs. Since these two prices are highly correlated, two sequences of uncorrelated inputs would not be appropriate. The purpose of the InputVariableCorrelator class is to produce sequences of correlated inputs. The correlated inputs retain the same marginal distributions as the original inputs and will have a Spearmans rank correlation matrix approximately equal to one specified by the user. Reference for the algorithm used - Iman, Ronald L. and W. J. Conover, A Distribution-Free Approach to Inducing Rank Correlation Amoung Input Variables, Commun. Statist.-Simula. Computation 11(3), pp. 311-334 (1982)

Inheritance Hierarchy

System..::.Object
  CenterSpace.NMath.Stats..::.InputVariableCorrelator
    CenterSpace.NMath.Stats..::.ReducedVarianceInputCorrelator

See Also