作者williamppt (夏夜晚风)
看板MATLAB
标题Re: [问题] 请问怎麽把矩阵数值小於3的列全改为0?
时间Mon Apr 3 15:22:12 2017
大大您好, 我输入a(all(a<3,2),:)=0;
理论上第一列和第四列会整个都变成0,
(因为2和0比3小,所以2那列全部变成0,以及0那列全部变成0)
预计要变成 a=[0 42 63 0 75...
0 65 45 0 22...
0 43 5 0 56...
0 17 7 0 9 ...
.
.
. ]
但是了後发现阵列中所有值都没变耶.请教教我吧~~~
※ 引述《williamppt (夏夜晚风)》之铭言:
: a=[11 42 63 24 75...
: 32 65 45 0 22...
: 2 43 5 56 56...
: 8 17 7 5 9 ...
: .
: . ]
: 请问要怎麽要用矩阵的做法把有数值小於3的那整整个列都改成0呢?
: 因为矩阵很大,我用双层for回圈的方法起来超级久
: 目前想到的做法 a(a<3)<0 可以只改到元素,但改不到含有元素的那整列
: 请大家指点我吧 感谢~~~~~
--
▂▂ ▂▂▂
▂
▄▅▅▄
▆█ _█◣
◢
(●) ◣/\\
丫 │◥  ̄◤
╰┴╯ ◣
◥ / ◣
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.120.53.222
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1491204135.A.42C.html
→ mp19990920: a( : , any(a<3) )=0 04/03 15:44
1F:→ williamppt: 感谢 ^_^ 04/03 18:14
2F:推 kobeblack: a( a < 3 ) = 0 04/07 11:59
3F:→ kobeblack: sorry没看清楚要求 04/07 12:00