numpy API: np.random.multivariate_normal

Parameters:
mean : 1-D array_like, of length N

Mean of the N-dimensional distribution.

cov : 2-D array_like, of shape (N, N)

Covariance matrix of the distribution. It must be symmetric and positive-semidefinite for proper sampling.

size : int or tuple of ints, 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-dimensional, the output shape is (m,n,k,N). If no shape is specified, a single (N-D) sample is returned.

check_valid : { ‘warn’, ‘raise’, ‘ignore’ }, optional

Behavior when the covariance matrix is not positive semidefinite.

tol : float, optional

Tolerance when checking the singular values in covariance matrix.

Returns:
out : ndarray

The drawn samples, of shape size, if that was provided. If not, the shape is (N,).

In other words, each entry out[i,j,…,:] is an N-dimensional value drawn from the distribution.


例子:

>>> mean = (1, 2)
>>> cov = [[1, 0], [0, 1]]
>>> x = np.random.multivariate_normal(mean, cov, (3, 3))
#这里的最后一维代表组成多维随机向量的随机变量的个数
x.shape
(3, 3, 2)

猜你喜欢

转载自blog.csdn.net/nockinonheavensdoor/article/details/80546006