All Packages  Class Hierarchy  This Package  Previous  Next  Index  WEKA's home

Class weka.core.ContingencyTables

java.lang.Object
   |
   +----weka.core.ContingencyTables

public class ContingencyTables
extends Object
Class implementing some statistical routines for contingency tables.

Version:
$Revision: 1.2 $
Author:
Eibe Frank (eibe@cs.waikato.ac.nz)

Constructor Index

 o ContingencyTables()

Method Index

 o chiSquared(double[][], boolean)
Returns chi-squared probability for a given matrix.
 o chiVal(double[][], boolean)
Computes chi-squared statistic for a contingency table.
 o cochransCriterion(double[][])
Tests if Cochran's criterion is fullfilled for the given contingency table.
 o CramersV(double[][])
Computes Cramer's V for a contingency table.
 o entropy(double[])
Computes the entropy of the given array.
 o entropyConditionedOnColumns(double[][])
Computes conditional entropy of the rows given the columns.
 o entropyConditionedOnRows(double[][])
Computes conditional entropy of the columns given the rows.
 o entropyConditionedOnRows(double[][], double[][], double)
Computes conditional entropy of the columns given the rows of the test matrix with respect to the train matrix.
 o entropyOverColumns(double[][])
Computes the columns' entropy for the given contingency table.
 o entropyOverRows(double[][])
Computes the rows' entropy for the given contingency table.
 o gainRatio(double[][])
Computes gain ratio for contingency table (split on rows).
 o log2MultipleHypergeometric(double[][])
Returns negative base 2 logarithm of multiple hypergeometric probability for a contingency table.
 o main(String[])
Main method for testing this class.
 o reduceMatrix(double[][])
Reduces a matrix by deleting all zero rows and columns.
 o symmetricalUncertainty(double[][])
Calculates the symmetrical uncertainty for base 2.
 o tauVal(double[][])
Computes Goodman and Kruskal's tau-value for a contingency table.

Constructors

 o ContingencyTables
 public ContingencyTables()

Methods

 o chiSquared
 public static double chiSquared(double matrix[][],
                                 boolean yates)
Returns chi-squared probability for a given matrix.

Parameters:
matrix - the contigency table
yates - is Yates' correction to be used?
Returns:
the chi-squared probability
 o chiVal
 public static double chiVal(double matrix[][],
                             boolean useYates)
Computes chi-squared statistic for a contingency table.

Parameters:
matrix - the contigency table
yates - is Yates' correction to be used?
Returns:
the value of the chi-squared statistic
 o cochransCriterion
 public static boolean cochransCriterion(double matrix[][])
Tests if Cochran's criterion is fullfilled for the given contingency table. Rows and columns with all zeros are not considered relevant.

Parameters:
matrix - the contigency table to be tested
Returns:
true if contingency table is ok, false if not
 o CramersV
 public static double CramersV(double matrix[][])
Computes Cramer's V for a contingency table.

Parameters:
matrix - the contingency table
Returns:
Cramer's V
 o entropy
 public static double entropy(double array[])
Computes the entropy of the given array.

Parameters:
array - the array
Returns:
the entropy
 o entropyConditionedOnColumns
 public static double entropyConditionedOnColumns(double matrix[][])
Computes conditional entropy of the rows given the columns.

Parameters:
matrix - the contingency table
Returns:
the conditional entropy of the rows given the columns
 o entropyConditionedOnRows
 public static double entropyConditionedOnRows(double matrix[][])
Computes conditional entropy of the columns given the rows.

Parameters:
matrix - the contingency table
Returns:
the conditional entropy of the columns given the rows
 o entropyConditionedOnRows
 public static double entropyConditionedOnRows(double train[][],
                                               double test[][],
                                               double numClasses)
Computes conditional entropy of the columns given the rows of the test matrix with respect to the train matrix. Uses a Laplace prior. Does NOT normalize the entropy.

Parameters:
train - the train matrix
test - the test matrix
the - number of symbols for Laplace
Returns:
the entropy
 o entropyOverRows
 public static double entropyOverRows(double matrix[][])
Computes the rows' entropy for the given contingency table.

Parameters:
matrix - the contingency table
Returns:
the rows' entropy
 o entropyOverColumns
 public static double entropyOverColumns(double matrix[][])
Computes the columns' entropy for the given contingency table.

Parameters:
matrix - the contingency table
Returns:
the columns' entropy
 o gainRatio
 public static double gainRatio(double matrix[][])
Computes gain ratio for contingency table (split on rows). Returns Double.MAX_VALUE if the split entropy is 0.

Parameters:
matrix - the contingency table
Returns:
the gain ratio
 o log2MultipleHypergeometric
 public static double log2MultipleHypergeometric(double matrix[][])
Returns negative base 2 logarithm of multiple hypergeometric probability for a contingency table.

Parameters:
matrix - the contingency table
Returns:
the log of the hypergeometric probability of the contingency table
 o reduceMatrix
 public static double[][] reduceMatrix(double matrix[][])
Reduces a matrix by deleting all zero rows and columns.

Parameters:
matrix - the matrix to be reduced
the - matrix with all zero rows and columns deleted
 o symmetricalUncertainty
 public static double symmetricalUncertainty(double matrix[][])
Calculates the symmetrical uncertainty for base 2.

Parameters:
matrix - the contingency table
Returns:
the calculated symmetrical uncertainty
 o tauVal
 public static double tauVal(double matrix[][])
Computes Goodman and Kruskal's tau-value for a contingency table.

Parameters:
matrix - the contingency table
Goodman - and Kruskal's tau-value
 o main
 public static void main(String ops[])
Main method for testing this class.


All Packages  Class Hierarchy  This Package  Previous  Next  Index  WEKA's home