作者jacky33 (VBA API)
看板MATLAB
標題[問題]請教矩陣運算及取值
時間Wed Oct 14 20:43:13 2015
請教
1.假設有一mxn的A矩陣,條件是當其中某一列的第4行的值大於等於第1行時,
取出那一列到B矩陣,依次走完m列。
2.承上題,從A矩陣刪除那一列。
3.語法如下時出現 ???Index exceeds matrix dimension,為何
A=1:1:100;
B=3.1:0.1:5;
C=100:10:800;
[x y z] = meshgrid(A, B, C);
data=[x(:) y(:) z(:)];
for i=1:length(data);
if data(i,1) > data(i,3);
data(i,:) = [];
end
end
煩請幫忙解答,感謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.241.102.183
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1444826595.A.360.html
噓 Steven0422: 不客氣 XDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 10/14 21:43
推 celestialgod: 1. B=A(A(:, 4)>A(:, 1), :) 10/14 22:02
→ celestialgod: A=A(~(A(:, 4)>A(:, 1)), :) 10/14 22:03
→ celestialgod: 上面是2 10/14 22:03
→ celestialgod: 3. 迴圈應該改成i=1:size(data, 1) 10/14 22:04
→ celestialgod: 因為length是nelem 10/14 22:04
→ jacky33: 感謝!!!!!!!!!!!!!!!! 10/14 22:06
→ celestialgod: 不客氣 10/14 22:37
推 sunev: 改迴圈範圍應該是沒有用的,因為該行只會被執行一次 10/14 23:49