Re: [問題] 如何用迴圈跑出數組常態分佈的矩陣?已回收

看板MATLAB作者 (mself)時間14年前 (2011/08/14 22:07), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串4/4 (看更多)
可以用 repmat() N=10; temp=zeros(N,6); y0=[36 16 64 1 3 5]; temp=normrnd(repmat(y0,N,1), 1.5, 1.6); temp 我沒有實測過,但應該有機會比用 for 迴圈速度快 ※ 引述《novelpse (重新開始)》之銘言: : ※ 引述《yadakaky (yadakaky)》之銘言: : : N=10 % N = any number : : y0=[36 16 64 1 3 5]; : : temp=[] : : for i=1:N : : temp=[temp;normrnd(y0,1.5,1,6)] : : end : : 拙作,參考參考 : 感謝您的分享,我後來也想到了怎麼寫,如下: : N=10;% Your number : temp=zeros(N,6); : y0=[36 16 64 1 3 5]; : for i=1:N : temp(i,:)=normrnd(y0,1.5,1,6); : end : temp -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.73.50.59

08/14 22:49, , 1F
這樣會比較快 但有偏誤
08/14 22:49, 1F
能否更詳細說明呢,比較原po(novelpse)所寫的跟我寫的, 應該是一樣啊 還是說 normrnd 取亂數有什麼特別要注意的地方 還請指點~ ※ 編輯: mself 來自: 203.73.50.59 (08/14 23:38)
文章代碼(AID): #1EHzQM4E (MATLAB)
文章代碼(AID): #1EHzQM4E (MATLAB)