2012-03-15 73 views
0

我有两个数组。一个用于数据,另一个包含我想从数组中选择的每个项目的1以及对于我想忽略的每个项目的0从Matlab中的数组中选择检查的项目?

data = [1 2 3 4 5]; 
list = [1 0 1 0 1]; 

是否有一个快速的单行方式来获得选中的元素(1,3和5)从数据阵列没有做这样的事情:

newdata = []; 
for i=1:numel(data) 
    if list(i) == 1 
     newdata(end+1) = data(i); 
    end 
end   

回答

4

您可以直接使用它:

data(list == 1) 

data(logical(list)) 
相关问题