brainpy.math.random.chisquare#
- brainpy.math.random.chisquare(df, size=None, key=None)[source]#
Draw samples from a chi-square distribution.
When df independent random variables, each with standard normal distributions (mean 0, variance 1), are squared and summed, the resulting distribution is chi-square (see Notes). This distribution is often used in hypothesis testing.
- Parameters:
df (float or array_like of floats) – Number of degrees of freedom, must be > 0.
size (int or tuple of ints, optional) – Output shape. If the given shape is, e.g.,
(m, n, k)
, thenm * n * k
samples are drawn. If size isNone
(default), a single value is returned ifdf
is a scalar. Otherwise,np.array(df).size
samples are drawn.
- Returns:
out – Drawn samples from the parameterized chi-square distribution.
- Return type:
ndarray or scalar
- Raises:
ValueError – When df <= 0 or when an inappropriate size (e.g.
size=-1
) is given.
Notes
The variable obtained by summing the squares of df independent, standard normally distributed random variables:
\[Q = \sum_{i=0}^{\mathtt{df}} X^2_i\]is chi-square distributed, denoted
\[Q \sim \chi^2_k.\]The probability density function of the chi-squared distribution is
\[p(x) = \frac{(1/2)^{k/2}}{\Gamma(k/2)} x^{k/2 - 1} e^{-x/2},\]where \(\Gamma\) is the gamma function,
\[\Gamma(x) = \int_0^{-\infty} t^{x - 1} e^{-t} dt.\]References
Examples
>>> bm.random.chisquare(2,4) array([ 1.89920014, 9.00867716, 3.13710533, 5.62318272]) # random