Covariance
org.apache.commons.math3.stat.correlation

Class Covariance

  • Direct Known Subclasses:
    StorelessCovariance


    public class Covarianceextends Object
    Computes covariances for pairs of arrays or columns of a matrix.

    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

      Constructors 
      Constructor and Description
      Covariance()
      Create 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.
    • Constructor Detail

      • Covariance

        public Covariance()
        Create a Covariance with no data
      • Covariance

        public Covariance(double[][] data,          boolean biasCorrected)           throws MathIllegalArgumentException,                  NotStrictlyPositiveException
        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 covariates
        biasCorrected - true means covariances are bias-corrected
        Throws:
        MathIllegalArgumentException - if the input data array is not rectangular with at least two rows and one column.
        NotStrictlyPositiveException - if the input data array is not rectangular with at least one row and one column.
      • Covariance

        public Covariance(double[][] data)           throws MathIllegalArgumentException,                  NotStrictlyPositiveException
        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.
        NotStrictlyPositiveException - if the input data array is not rectangular with at least one row and one column.
      • Covariance

        public Covariance(RealMatrix matrix,          boolean biasCorrected)           throws MathIllegalArgumentException
        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 covariates
        biasCorrected - true means covariances are bias-corrected
        Throws:
        MathIllegalArgumentException - if the input matrix does not have at least two rows and one column
      • Covariance

        public Covariance(RealMatrix matrix)           throws MathIllegalArgumentException
        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 Detail

      • getCovarianceMatrix

        public RealMatrix 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
      • 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 array
        yArray - second data array
        biasCorrected - 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

        public double covariance(double[] xArray,                double[] yArray)                  throws MathIllegalArgumentException
        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 array
        yArray - 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

SCaVis 2.2 © jWork.ORG