Class Covariance
- Direct Known Subclasses:
StorelessCovariance
The constructors that take RealMatrix
or double[][]
arguments generate covariance matrices. The columns of the input
matrices are assumed to represent variable values.
The constructor argument biasCorrected
determines whether or
not computed covariances are bias-corrected.
Unbiased covariances are given by the formula:
cov(X, Y) = Σ[(xi - E(X))(yi - E(Y))] / (n - 1)
where E(X)
is the mean of X
and E(Y)
is the mean of the Y
values.
Non-bias-corrected estimates use n
in place of n - 1
.
-
Constructor Summary
ConstructorDescriptionCreate a Covariance with no data.Covariance
(double[][] data) Create a Covariance matrix from a rectangular array whose columns represent covariates.Covariance
(double[][] data, boolean biasCorrected) Create a Covariance matrix from a rectangular array whose columns represent covariates.Covariance
(RealMatrix matrix) Create a covariance matrix from a matrix whose columns represent covariates.Covariance
(RealMatrix matrix, boolean biasCorrected) Create a covariance matrix from a matrix whose columns represent covariates. -
Method Summary
Modifier and TypeMethodDescriptionprotected RealMatrix
computeCovarianceMatrix
(double[][] data) Create a covariance matrix from a rectangular array whose columns represent covariates.protected RealMatrix
computeCovarianceMatrix
(double[][] data, boolean biasCorrected) Compute a covariance matrix from a rectangular array whose columns represent covariates.protected RealMatrix
computeCovarianceMatrix
(RealMatrix matrix) Create a covariance matrix from a matrix whose columns represent covariates.protected RealMatrix
computeCovarianceMatrix
(RealMatrix matrix, boolean biasCorrected) Compute a covariance matrix from a matrix whose columns represent covariates.double
covariance
(double[] xArray, double[] yArray) Computes the covariance between the two arrays, using the bias-corrected formula.double
covariance
(double[] xArray, double[] yArray, boolean biasCorrected) Computes the covariance between the two arrays.Returns the covariance matrixint
getN()
Returns the number of observations (length of covariate vectors)
-
Constructor Details
-
Covariance
public Covariance()Create a Covariance with no data. -
Covariance
Create a Covariance matrix from a rectangular array whose columns represent covariates.The
biasCorrected
parameter determines whether or not covariance estimates are bias-corrected.The input array must be rectangular with at least one column and two rows.
- Parameters:
data
- rectangular array with columns representing covariatesbiasCorrected
- true means covariances are bias-corrected- Throws:
MathIllegalArgumentException
- if the input data array is not rectangular with at least two rows and one column.MathIllegalArgumentException
- if the input data array is not rectangular with at least one row and one column.
-
Covariance
Create a Covariance matrix from a rectangular array whose columns represent covariates.The input array must be rectangular with at least one column and two rows.
- Parameters:
data
- rectangular array with columns representing covariates- Throws:
MathIllegalArgumentException
- if the input data array is not rectangular with at least two rows and one column.MathIllegalArgumentException
- if the input data array is not rectangular with at least one row and one column.
-
Covariance
Create a covariance matrix from a matrix whose columns represent covariates.The
biasCorrected
parameter determines whether or not covariance estimates are bias-corrected.The matrix must have at least one column and two rows.
- Parameters:
matrix
- matrix with columns representing covariatesbiasCorrected
- true means covariances are bias-corrected- Throws:
MathIllegalArgumentException
- if the input matrix does not have at least two rows and one column
-
Covariance
Create a covariance matrix from a matrix whose columns represent covariates.The matrix must have at least one column and two rows.
- Parameters:
matrix
- matrix with columns representing covariates- Throws:
MathIllegalArgumentException
- if the input matrix does not have at least two rows and one column
-
-
Method Details
-
getCovarianceMatrix
Returns the covariance matrix- Returns:
- covariance matrix
-
getN
public int getN()Returns the number of observations (length of covariate vectors)- Returns:
- number of observations
-
computeCovarianceMatrix
protected RealMatrix computeCovarianceMatrix(RealMatrix matrix, boolean biasCorrected) throws MathIllegalArgumentException Compute a covariance matrix from a matrix whose columns represent covariates.- Parameters:
matrix
- input matrix (must have at least one column and two rows)biasCorrected
- determines whether or not covariance estimates are bias-corrected- Returns:
- covariance matrix
- Throws:
MathIllegalArgumentException
- if the matrix does not contain sufficient data
-
computeCovarianceMatrix
Create a covariance matrix from a matrix whose columns represent covariates. Covariances are computed using the bias-corrected formula.- Parameters:
matrix
- input matrix (must have at least one column and two rows)- Returns:
- covariance matrix
- Throws:
MathIllegalArgumentException
- if matrix does not contain sufficient data- See Also:
-
computeCovarianceMatrix
protected RealMatrix computeCovarianceMatrix(double[][] data, boolean biasCorrected) throws MathIllegalArgumentException Compute a covariance matrix from a rectangular array whose columns represent covariates.- Parameters:
data
- input array (must have at least one column and two rows)biasCorrected
- determines whether or not covariance estimates are bias-corrected- Returns:
- covariance matrix
- Throws:
MathIllegalArgumentException
- if the data array does not contain sufficient dataMathIllegalArgumentException
- if the input data array is not rectangular with at least one row and one column.
-
computeCovarianceMatrix
Create a covariance matrix from a rectangular array whose columns represent covariates. Covariances are computed using the bias-corrected formula.- Parameters:
data
- input array (must have at least one column and two rows)- Returns:
- covariance matrix
- Throws:
MathIllegalArgumentException
- if the data array does not contain sufficient dataMathIllegalArgumentException
- if the input data array is not rectangular with at least one row and one column.- See Also:
-
covariance
public double covariance(double[] xArray, double[] yArray, boolean biasCorrected) throws MathIllegalArgumentException Computes the covariance between the two arrays.Array lengths must match and the common length must be at least 2.
- Parameters:
xArray
- first data arrayyArray
- second data arraybiasCorrected
- if true, returned value will be bias-corrected- Returns:
- returns the covariance for the two arrays
- Throws:
MathIllegalArgumentException
- if the arrays lengths do not match or there is insufficient data
-
covariance
Computes the covariance between the two arrays, using the bias-corrected formula.Array lengths must match and the common length must be at least 2.
- Parameters:
xArray
- first data arrayyArray
- second data array- Returns:
- returns the covariance for the two arrays
- Throws:
MathIllegalArgumentException
- if the arrays lengths do not match or there is insufficient data
-