Re: [問題] 矩陣問題已回收

看板MATLAB作者 (詹姆士布雷克)時間14年前 (2010/11/26 12:10), 編輯推噓4(405)
留言9則, 4人參與, 最新討論串27/34 (看更多)
※ 引述《smallblack11 (詹姆士布雷克)》之銘言: : 設一矩陣 : A=[1 2 3 4 ; 5 6 7 8 ] : X=zeros(80,80) : 也就是以下 : 1 2 3 4 : 5 6 7 8 : 這是矩陣內的值 : 能否能將它轉換成以下這樣(值變成為座標位置) : (1,5) (2,6) (3,7) (4,8) : 把這4座標位置丟回去一個M*N(X)的矩陣裡面然後將它設為255 : 不曉得大家有沒有遇過類似問題 能給予協助 謝謝 ---------------------------------- 但我想要的並不是轉置之後的值(我是想要將矩陣內的值 變成座標位置) 如果手動也是可以得到答案 但是矩陣太大了 沒辦法慢慢用手動設定 轉置之後會變成下列這樣 設H=(A') 1 5 2 6 3 7 4 8 x=(H(1,1)) y=(H(1,2)) X(x,y)=255; %X(1,5)=255; 矩陣X在座標(1,5)位置變成255 以上就是手動可以得到的值 不曉得可否用迴圈寫出轉換的值呢 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.62.112.193

11/26 12:37, , 1F
sub2ind ind2sub
11/26 12:37, 1F

11/26 13:07, , 2F
X=zeros(m,n); X( A(1,:)*m + A(2,:) ) = 255;
11/26 13:07, 2F

11/26 13:27, , 3F
我想要跪地拜謝 Mike 大 感恩啊 受教了
11/26 13:27, 3F

11/26 13:43, , 4F
還差一點點 好像有點歪掉了 不過真的很接近了
11/26 13:43, 4F

11/26 13:55, , 5F
Sorry, X = zeros(n ,m)
11/26 13:55, 5F

11/26 13:56, , 6F
X( (A(1,:)-1)*n + A(2,:) ) = 255; X = X';
11/26 13:56, 6F

11/26 15:07, , 7F
謝謝樓
11/26 15:07, 7F

11/27 00:28, , 8F
X(sub2ind(size(X), A(1,:), A(2,:))) = 255;
11/27 00:28, 8F

11/27 12:33, , 9F
樓上正解 感恩
11/27 12:33, 9F
文章代碼(AID): #1CxpCtN4 (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #1CxpCtN4 (MATLAB)