我有一个10x500的矩阵,我想丢弃在前100个元素中包含大于6的值的每一行。首先,我试图制作一个包含该行所有索引的数组,以将其丢弃。这是我的代码
idx_discard_trials = [];
for i = 1:size(data_matrix,1)
if any(data_matrix(i,1:100)>6)
idx_discard_trials = i;
end
end
但是,在循环结束时,我仅得到最后一个索引,而不是列表。有人知道如何使用for循环将元素追加到数组吗?
答案 0 :(得分:1)
这是因为您一直在重写单个值,因此需要通过idx_discard_trials(end+1) = i
附加这些值。
您并不需要为此循环,请尝试以下操作:
data_matrix(any(data_matrix(:,1:100) > 6, 2),:) = []