How to loading a vector with values from a logical index
1 次查看(过去 30 天)
显示 更早的评论
I have a vector, Vin, of length m. I also have a logical vector, Idx, to select indices to work on (subset size n < m). I can operate on Vin(Idx) and get Vdata of length n. This is all good. But now I want to generate a new Vout vector that is filled with the values from Vdata at the appropriate index. This can be accomplished by the following code snippet.
Vout=zeros(length(Vin));
k = 1;
for j = 1:length(Vin)
if Idx(j)
Vout(j) = Vdata(k);
k = k + 1;
end
end
This seems verbose ? Is there a more efficient or correct way of doing this? i want the output vector to be of length m, not n
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Get Started with Optimization Toolbox 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!