[討論]想寫一種矩陣

看板MATLAB作者 (小劉)時間9年前 (2016/03/10 19:44), 9年前編輯推噓3(3010)
留言13則, 3人參與, 最新討論串1/1
假設Ai是一組隨機產生的亂數 A1=一個亂數,A2=一個亂數,A3=一個亂數,........Ai=一個亂數 i=n(n可以是任意正整數) 我想寫一種矩陣是以下形式 [n*An n*An n*An (n-1)*An-1 (n-1)*An-1 (n-1)*An-1 .......A1 A1 A1] 例如n=3時 矩陣就會是[3*A3 3*A3 3*A3 2*A2 2*A2 2*A2 A1 A1 A1] 請問該怎麼寫 卡關好幾天了 請大家幫幫忙 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.114.54.170 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1457610246.A.F1E.html ※ 編輯: ljuyentintho (140.114.54.170), 03/10/2016 20:44:22

03/10 21:12, , 1F
設A為一陣列, 再用迴圈,應該不會太難吧
03/10 21:12, 1F

03/10 21:22, , 2F
A = repmat(1:n .* rand(1, n), 3, 1); A(:)'
03/10 21:22, 2F

03/10 21:22, , 3F
即為所得
03/10 21:22, 3F

03/10 21:23, , 4F
A = repmat((1:n) .* rand(1, n), 3, 1); A(:)'
03/10 21:23, 4F

03/10 21:26, , 5F
()一定要加,不然會被當成 1:(n.*rand(1,n))
03/10 21:26, 5F

03/10 21:27, , 6F
雖然不知道為啥這樣沒錯誤訊息= =
03/10 21:27, 6F

03/11 01:17, , 7F
If you specify nonscalar arrays, MATLAB interprets
03/11 01:17, 7F

03/11 01:17, , 8F
j:i:k as j(1):i(1):k(1).
03/11 01:17, 8F

03/11 08:38, , 9F
喔喔,謝謝樓上!! 我覺得他應該跟R一樣給警告...
03/11 08:38, 9F

03/11 08:40, , 10F
這可以算feature啦......雖然我也是去查了help才知道
03/11 08:40, 10F

03/11 08:52, , 11F
ㄜ,給個警告可能會好一點XDD
03/11 08:52, 11F

03/11 11:01, , 12F
這種基本語法,定了就定了,要變動反而麻煩。
03/11 11:01, 12F

03/11 11:03, , 13F
就好像c裡面 if(x=0) 可以過,但matlab 會吐error。
03/11 11:03, 13F
文章代碼(AID): #1MuLu6yU (MATLAB)
文章代碼(AID): #1MuLu6yU (MATLAB)