我有两个数组。一个用于数据,一个包含1
,每个项目我想从一个数组中选择,0
用于我想要忽略的每个项目。
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
答案 0 :(得分:4)
您可以直接使用它:
data(list == 1)
或
data(logical(list))