Set vector elements of one vector to nonzero elements of another
1 次查看(过去 30 天)
显示 更早的评论
So I have two vectors:
v1, v2, both same size.
I want to find all the elements where v2 is not zero and set the corresponding elements in v1 to those values, while leaving the other elements in v1 untouched.
E.g.
v1=[1 2 3 4 5] v2=[1 0 1 1 0]
Code I need goes here
v1 --> [1 2 1 1 5]
Can I do this without loops? Thanks.
采纳的回答
Sean de Wolski
2011-4-1
v1(logical(v2)) = v2(logical(v2));
or on two lines:
idx = logical(v2);
v1(idx) = v2(idx);
0 个评论
更多回答(1 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!