在for循环matlab中将元素追加到数组中

时间:2018-12-05 03:03:12

标签: matlab for-loop append

我有一个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循环将元素追加到数组吗?

1 个答案:

答案 0 :(得分:1)

这是因为您一直在重写单个值,因此需要通过idx_discard_trials(end+1) = i附加这些值。

您并不需要为此循环,请尝试以下操作:

data_matrix(any(data_matrix(:,1:100) > 6, 2),:) = []