作者Lionel (跟快乐交往)
看板MATLAB
标题[心得] 矩阵转存问题
时间Fri Mar 27 14:55:57 2015
A(i,j)元素属於{1,2,3}
特殊矩阵 只有3个值
已知
A=[1 2 3;
3 2 1;
3 3 3;];
欲得
A(i,j)=1时,B(i,j)=1
A(i,j)=2or3时,B(i,j)=0
B=[1 0 0;
0 0 1;
0 0 0;];
my code
A=[1 2 3;
3 2 1;
3 3 3;];
for i=3
for j=3
if A(i,j)==1
B(i,j)=1;
elseif A(i,j)>1
B(i,j)=0;
end
end
end
请问有没有不用for的方法...
我想让程式跑快一点
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.127.77.191
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1427439360.A.720.html
※ 编辑: Lionel (140.127.77.191), 03/27/2015 14:56:31
1F:→ celestialgod: B = A==1 03/27 15:03
2F:→ Lionel: 请问为什麽这样就可以了?? 03/27 15:09
3F:→ Lionel: 喔喔 我懂了 那个1是ture 03/27 15:20
4F:推 profyang: B=A; B(A==1)=1; B(A~=1)=0; 1F写法的完整版 这题刚好 03/27 17:18
5F:→ profyang: 1F那样写就够了 但如果A=1的你想让她=10 A不=1的想=20之 03/27 17:19
6F:→ profyang: 类的就不能那样写 03/27 17:19