Class CorTest

java.lang.Object
smile.stat.hypothesis.CorTest

public class CorTest extends Object
Correlation test. Correlation of two variables is a measure of the degree to which they vary together. More accurately, correlation is the covariation of standardized variables. In positive correlation, as one variable increases, so also does the other. In negative correlation, as one variable increases, the other variable decreases. Perfect positive correlation usually is calculated as a value of 1 (or 100%). Perfect negative correlation usually is calculated as a value of -1. A values of zero shows no correlation at all.

Three common types of correlation are Pearson, Spearman (for ranked data) and Kendall (for uneven or multiple rankings).

To deal with measures of association between nominal variables, we can use Chi-square test for independence. For any pair of nominal variables, the data can be displayed as a contingency table, whose rows are labels by the values of one nominal variable, whose columns are labels by the values of the other nominal variable, and whose entries are non-negative integers giving the number of observed events for each combination of row and column.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final double
    The correlation coefficient.
    final double
    The degree of freedom of test statistic.
    final String
    The type of test.
    final double
    Two-sided p-value.
    final double
    The test statistic.
  • Constructor Summary

    Constructors
    Constructor
    Description
    CorTest(String method, double cor, double t, double df, double pvalue)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    static CorTest
    kendall(double[] x, double[] y)
    Kendall rank correlation test.
    static CorTest
    pearson(double[] x, double[] y)
    Pearson correlation coefficient test.
    static CorTest
    spearman(double[] x, double[] y)
    Spearman rank correlation coefficient test.
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • method

      public final String method
      The type of test.
    • cor

      public final double cor
      The correlation coefficient.
    • t

      public final double t
      The test statistic.
    • df

      public final double df
      The degree of freedom of test statistic. It is set to 0 in case of Kendall test as the test is non-parametric.
    • pvalue

      public final double pvalue
      Two-sided p-value.
  • Constructor Details

    • CorTest

      public CorTest(String method, double cor, double t, double df, double pvalue)
      Constructor.
      Parameters:
      method - the type of correlation.
      cor - the correlation coefficient.
      t - the t-statistic.
      df - the degree of freedom.
      pvalue - the p-value.
  • Method Details

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • pearson

      public static CorTest pearson(double[] x, double[] y)
      Pearson correlation coefficient test.
      Parameters:
      x - the sample values.
      y - the sample values.
      Returns:
      the test results.
    • spearman

      public static CorTest spearman(double[] x, double[] y)
      Spearman rank correlation coefficient test. The Spearman Rank Correlation Coefficient is a form of the Pearson coefficient with the data converted to rankings (i.e. when variables are ordinal). It can be used when there is non-parametric data and hence Pearson cannot be used.

      The raw scores are converted to ranks and the differences between the ranks of each observation on the two variables are calculated.

      The p-value is calculated by approximation, which is good for n > 10.

      Parameters:
      x - the sample values.
      y - the sample values.
      Returns:
      the test results.
    • kendall

      public static CorTest kendall(double[] x, double[] y)
      Kendall rank correlation test. The Kendall Tau Rank Correlation Coefficient is used to measure the degree of correspondence between sets of rankings where the measures are not equidistant. It is used with non-parametric data. The p-value is calculated by approximation, which is good for n > 10.
      Parameters:
      x - the sample values.
      y - the sample values.
      Returns:
      the test results.