从矢量中删除缺少的元素

时间:2014-12-08 17:33:18

标签: matlab vector

我有一个向量B=[1; 2; 1; 2; 3; 5; 6; 8; 9; 10]

缺少元素a=[4 7]

我想将B映射到像

这样的“连续”矢量
B_map=[1; 2; 1; 2; 3; 4; 5; 6; 7; 8]

删除“缺失”元素(4 7)并相应地“缩放”其余元素。

我的问题是,根据失踪元素的数量(在这种情况下为2),我必须缩放不同数量的向量B ...

1 个答案:

答案 0 :(得分:0)

我想我想出来了......

a = sort(a);

B_map = B;

for i = 1:numel(a)
    clear id_sub
    id_sub = find(B >= a(i));
    B_map(id_sub) = B_map(id_sub)-1;
end