Instances of the InputVariableCorrelator class are used to induce
a desired rank correlation among input variables.
Namespace:
CenterSpace.NMath.StatsAssembly: 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
CenterSpace.NMath.Stats..::.InputVariableCorrelator
CenterSpace.NMath.Stats..::.ReducedVarianceInputCorrelator