0
mu=[1 2 3 4 5]';
sigma=[1 1 1 1 1]';
N=100; %Number of samples for each mu
R=normrnd(mu,sigma,?)
使用normrnd,是否有可能爲每個mu值生成N個樣本而沒有循環(這樣R將是5×100矩陣)?MATLAB使用正態隨機數生成無循環數列意義
mu=[1 2 3 4 5]';
sigma=[1 1 1 1 1]';
N=100; %Number of samples for each mu
R=normrnd(mu,sigma,?)
使用normrnd,是否有可能爲每個mu值生成N個樣本而沒有循環(這樣R將是5×100矩陣)?MATLAB使用正態隨機數生成無循環數列意義
我不知道normrnd。
年紀較大的randn,我會用一樣的東西:
repmat(mu,N,1) + randn(N,length(mu))*diag(sigma)
編輯
啊,你要轉置5×100,這是
repmat(mu,1,N) + diag(sigma)*randn(length(mu),N)
工程。如果我可以提出一個建議,考慮使用'bsxfun'而不是'repmat':'bsxfun(@plus,mu,randn(N,numel(mu))* diag(sigma));'你可以看到一個全面的調查性能比較這裏:http://stackoverflow.com/questions/29719674/comparing-bsxfun-and-repmat-通常'bsxfun'比使用'repmat'等效代碼更快,更高效。 – rayryeng