Class CellTable

java.lang.Object
edu.cmu.tetrad.data.CellTable

public final class CellTable extends Object
Stores a cell count table of arbitrary dimension. Provides methods for incrementing particular cells and for calculating marginals.
Author:
josephramsey
See Also:
  • Constructor Details

    • CellTable

      public CellTable(int[] dims)
      Constructs a new cell table using the given array for dimensions, initializing all cells in the table to zero.
      Parameters:
      dims - an int[] value
  • Method Details

    • addToTable

      public void addToTable(DataSet dataSet, int[] indices)
    • getNumValues

      public int getNumValues(int varIndex)
      Parameters:
      varIndex - the index of the variable in question.
      Returns:
      the number of dimensions of the variable.
    • calcMargin

      public long calcMargin(int[] coords)
      Calculates a marginal sum for the cell table. The variables over which marginal sums should be taken are indicated by placing "-1's" in the appropriate positions in the coordinate argument. For instance, to find the margin for v0 = 1, v1 = 3, and v3 = 2, where the marginal sum ranges over all values of v2 and v4, the array [1, 3, -1, 2, -1] should be used.
      Parameters:
      coords - an array of the sort described above.
      Returns:
      the marginal sum specified.
    • calcMargin

      public long calcMargin(int[] coords, int[] marginVars)
      An alternative way to specify a marginal calculation. In this case, coords specifies a particular cell in the table, and varIndices is an array containing the indices of the variables over which the margin sum should be calculated. The sum is over the cell specified by 'coord' and all of the cells which differ from that cell in any of the specified coordinates.
      Parameters:
      coords - an int[] value
      marginVars - an int[] value
      Returns:
      an int value
    • setMissingValue

      public void setMissingValue(int missingValue)
    • getValue

      public long getValue(int[] testCell)