matlab利用数组筛选数组
a=[1,2,3,4,5];
b=[1,0,0,1,3];
%可以为行向量,也可以为列向量,无所谓
a(logical(b))
%logical将非零元素变为逻辑变量1
you will get
ans =
1 4 5
同样的道理
a={1,2,3}
此时
a =
1×3 cell 数组
{[1]} {[2]} {[3]}
继续输入
b=logical([0,1,1])
此时
b =
1×3 logical 数组
0 1 1
输入
a(b)
注意此时要用圆括号()而非{ }
ans =
1×2 cell 数组
{[2]} {[3]}