주요 콘텐츠

hygernd

Hypergeometric random numbers

Description

r = hygernd(m,k,n) generates a random number drawn from the hypergeometric distribution with the corresponding size of the population m, the number of items with the intended characteristic in the population k, and the number of samples drawn n.

r = hygernd(m,k,n,sz1,...,szN) generates an array of random numbers, where sz1,...,szN indicates the size of each dimension.

example

r = hygernd(m,k,n,sz) generates an array of random numbers, where the vector sz specifies size(r).

Examples

collapse all

Generate 1000 random numbers from a hypergeometric distribution with the corresponding size of the population m, the number of items with the intended characteristic in the population k, and the number of samples drawn n.

rng(0,"twister") % For reproducibility
m = 100;
k = 5;
n = 10;
r = hygernd(m,k,n,[1000 1]);

Plot a histogram of the numbers.

histogram(r)

Figure contains an axes object. The axes object contains an object of type histogram.

Input Arguments

collapse all

Size of the population, specified as a nonnegative integer or an array of nonnegative integers. Each value in m must be greater than or equal to the corresponding values in n and k.

To generate random numbers from multiple distributions, specify one or more of the following input arguments using arrays: m, k, or n. If one or more of the input arguments m, k, and n are arrays, then the array sizes must be the same. In this case, hygernd expands each scalar input into a constant array of the same size as the array inputs.

Data Types: single | double

Number of items with intended characteristics in the population, specified as a nonnegative integer or an array of nonnegative integers. Each value in k must be less than or equal to the corresponding value in m.

To generate random numbers from multiple distributions, specify one or more of the following input arguments using arrays: m, k, or n. If one or more of the input arguments m, k, and n are arrays, then the array sizes must be the same. In this case, hygernd expands each scalar input into a constant array of the same size as the array inputs.

Data Types: single | double

Number of items drawn from the population, specified as a nonnegative integer or an array of nonnegative integers. Each value in n must be less than or equal to the corresponding value in m.

To generate random numbers from multiple distributions, specify one or more of the following input arguments using arrays: m, k, or n. If one or more of the input arguments m, k, and n are arrays, then the array sizes must be the same. In this case, hygernd expands each scalar input into a constant array of the same size as the array inputs.

Data Types: single | double

Size of each dimension, specified as separate arguments of integers. For example, specifying 5,3,2 generates a 5-by-3-by-2 array of random numbers from the probability distribution.

If one or more of the input arguments m, k, and n are arrays, then the specified dimensions sz1,...,szN must match the common dimensions of m, k, and n after any necessary scalar expansion. The default values of sz1,...,szN are the common dimensions.

  • If you specify a single value sz1, then r is a square matrix of size sz1-by-sz1.

  • If the size of any dimension is 0 or negative, then r is an empty array.

  • Beyond the second dimension, hygernd ignores trailing dimensions with a size of 1. For example, specifying 3,1,1,1 produces a 3-by-1 vector of random numbers.

Data Types: single | double

Size of each dimension, specified as a row vector of integers. For example, specifying [5,3,2] generates a 5-by-3-by-2 array of random numbers from the probability distribution.

If one or more of the input arguments m, k, and n are arrays, then the specified dimensions sz must match the common dimensions of m, k, and n after any necessary scalar expansion. The default values of sz are the common dimensions.

  • If you specify a single value sz1, then r is a square matrix of size sz1-by-sz1.

  • If the size of any dimension is 0 or negative, then r is an empty array.

  • Beyond the second dimension, hygernd ignores trailing dimensions with a size of 1. For example, specifying [3,1,1,1] produces a 3-by-1 vector of random numbers.

Data Types: single | double

Output Arguments

collapse all

Random numbers, returned as a scalar value or an array of scalar values with the dimensions specified by sz1,...,szN or sz. Each element in r is the random number generated from the distribution specified by the corresponding elements in m, k, and n.

Alternative Functionality

  • hygernd is a function specific to the hypergeometric distribution. Statistics and Machine Learning Toolbox™ also offers the generic function random, which supports various probability distributions. To use random, specify the probability distribution name and its parameters. Note that the distribution-specific function hygernd is faster than the generic function random.

  • To generate random numbers interactively, use randtool, a user interface for random number generation.

Extended Capabilities

expand all

Version History

Introduced before R2006a