SuanShu, a Java numerical and statistical library

com.numericalmethod.suanshu.stats.test.distribution.pearson
Class AS159

java.lang.Object
  extended by com.numericalmethod.suanshu.stats.test.distribution.pearson.AS159

public class AS159
extends java.lang.Object

Algorithm AS 159 accepts a table shape (the number of rows and columns), and two vectors, the lists of row and column sums. There may be 0, 1, or many tables with nonnegative, integral entries that have the given shape and sums. If there is at least one candidate, then the routine will choose one, uniformly over the number of distinct candidates. The routine will report the case if there are no candidates.

Other implementations includes 'rcont2'. For example,

See Also:
"WM Patefield. "Algorithm AS 159: An Efficient Method of Generating RXC Tables with Given Row and Column Totals," Applied Statistics, Volume 30, Number 1, 1981, pages 91-97."

Nested Class Summary
static class AS159.RandomMatrix
          a random matrix generated by AS159 and its probability
 
Constructor Summary
AS159(int[] rowSums, int[] colSums)
          Construct a random table generator according to row and column totals.
AS159(int[] rowSums, int[] colSums, RandomNumberGenerator rng)
          Construct a random table generator according to row and column totals.
 
Method Summary
 AS159.RandomMatrix sample()
          Construct a random matrix based on the row and column sums.
 boolean validate(Matrix A)
          Check whether a matrix satisfies the row and column sums.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AS159

public AS159(int[] rowSums,
             int[] colSums)
Construct a random table generator according to row and column totals.

Parameters:
rowSums - row totals
colSums - column totals

AS159

public AS159(int[] rowSums,
             int[] colSums,
             RandomNumberGenerator rng)
Construct a random table generator according to row and column totals.

Parameters:
rowSums - row totals
colSums - column totals
rng - a uniform random number generator
Method Detail

validate

public boolean validate(Matrix A)
Check whether a matrix satisfies the row and column sums.

Parameters:
A - a matrix
Returns:
true if A satisfies the constraints

sample

public AS159.RandomMatrix sample()
Construct a random matrix based on the row and column sums.

Returns:
a random matrix

SuanShu, a Java numerical and statistical library

Copyright © 2011 Numerical Method Inc. Ltd. All Rights Reserved.