rndHyperGeo#
Purpose#
Computes the random numbers for the hypergeometric distribution
Format#
- x = rndHyperGeo(r, c, m, k, n)#
- { x, newstate } = rndHyperGeo(r, c, m, k, n, state)
- Parameters:
r (scalar) – row dimension of the return matrix x
c (scalar) – column dimension of the return matrix x
m (matrix) – The size of the population from which draws will be made. ExE conformable with the row and column dimensions of the return matrix, r and c
k (matrix) – The number of items in the population which possess a specified trait. ExE conformable with row and column dimensions of the return matrix, r, and c
n (matrix) – The number of items drawn from the population. ExE conformable with the dimensions of the return matrix, r and c
state (scalar or opaque vector) –
Optional argument.
scalar case
state = starting seed value only. If -1, GAUSS computes the starting seed based on the system clock.
opaque vector case
state = the state vector returned from a previous call to one of the
rnd
random number functions.
- Returns:
x (NxK matrix, Nx1 vector or scalar) – The probability of drawing x items which possess a specified trait.
new_state (Opaque vector) – the updated state
Examples#
Basic Example#
// Population size
m = 100;
// Number of marked items
k = 25;
// Number of items drawn
n = 40;
// Compute 1 random number
x = rndHyperGeo(1, 1, m, k, n);
Random matrix in which each column has different parameters.#
// Population size
m = 100;
// Number of marked items
k = 25;
// 1x2 row vector, number of items drawn
n = { 40 50 };
// Compute a 10 x 2 matrix of random number
x = rndHyperGeo(10, 2, m, k, n);
Both columns of the variable x created in the code above use the same values for m and k. However, the first column of x will be calculated using the first element of n, 40. The second column of x will be calculated using the second element of n, 50.
Passing in a state vector#
// Starting seed value
seed = 23424;
// Population size
m = 100;
// Number of marked items
k = 25;
// Number of items drawn
n = 40;
// Compute 1000x1 vector of random numbers
{ x, state } = rndHyperGeo(1000, 1, m, k, n, seed);
See also
Functions cdfHyperGeo()
, pdfHyperGeo()