randomgen.generator.ExtendedGenerator.wishart¶
- ExtendedGenerator.wishart(df, scale, size=None, *, check_valid='warn', tol=None, rank=None, method='svd')¶
Draw samples from the Wishart and pseudo-Wishart distributions.
- Parameters
- df{int, array_like[int]}
Degree-of-freedom values. In array-like must broadcast with all but the final two dimensions of
shape
.- scalearray_like
Shape matrix of the distribution. It must be symmetric and positive-semidefinite for sampling. Must have shape (c1, c2, …, cj, N, N) where (c1, c2, …, cj) broadcasts with the degree of freedom shape (d1, d2, …, dk).
- sizeint or sequence[int], optional
Given a shape of, for example,
(m,n,k)
,m*n*k
samples are generated, and packed in an m-by-n-by-k arrangement. Because each sample is N by N, the output shape is(m,n,k,N,N)
. If no shape is specified, a single (N by N) sample is returned.- check_valid{‘warn’, ‘raise’, ‘ignore’ }, optional
Behavior when the covariance matrix has rank less than
rank
.- tolfloat, optional
Tolerance when checking the rank of
shape
.shape
is cast to double before the check. If None, then the tolerance is automatically determined as a function of N and the limit of floating point precision.- rankint, optional
The rank of shape when generating from the Singular Wishart distribution. If None, then
rank
is set of N so that the draws from the standard Wishart or pseudo-Wishart are generated.- method{‘svd’, ‘eigh’, ‘cholesky’, ‘factor’}, optional
The cov input is used to compute a factor matrix A such that
A @ A.T = cov
. This argument is used to select the method used to compute the factor matrix A. The default method ‘svd’ is the slowest, while ‘cholesky’ is the fastest but less robust than the slowest method. The method eigh uses eigen decomposition to compute A and is faster than svd but slower than cholesky. Whenrank
is less than N, then the N largest eigenvalues and their associated eigenvalues are used when method is svd or eigh. When method is ‘cholesky, then the Cholesky of the upperrank
byrank
block is used. factor assumes that scale has been pre-factored so that no transformation is applied. When using factor, no check is performed on the rank.
- Returns
- ndarray
The generated variates from the Wishart distribution.
See also
standard_wishart
Generate variates with an identify scale.
Notes
Uses the method of Odell and Feiveson [1] when df >= dim. Otherwise variates are directly generated as the inner product of df by dim arrays of standard normal random variates.
References
- 1
Odell, P. L. , and A. H. Feiveson (1966) A numerical procedure to generate a sample covariance matrix. Jour. Amer. Stat. Assoc. 61, 199–203
- 2
Uhlig, H. (1994). “On Singular Wishart and Singular Multivariate Beta Distributions”. The Annals of Statistics. 22: 395–405
- 3
Dıaz-Garcıa, J. A., Jáimez, R. G., & Mardia, K. V. (1997). Wishart and Pseudo-Wishart distributions and some applications to shape theory. Journal of Multivariate Analysis, 63(1), 73-87.