我有一系列的时间,并在各种矩阵中返回,我们称之为b c。它们都是x乘2,第1列是以秒为单位的时间,第2列返回。虽然所有的回报都超过了一系列时间间隔,例如15s 30s 45s等,但问题并不是所有的矩阵都有所有时间桶,所以虽然a可能是30乘2,但b可能只是28乘2。因为它失踪说时间45秒并返回。我想通过每个矩阵和我错过了一个时间桶,我想插入一个零返回的桶 - 我很高兴创建一个控件30×1矩阵,所有时间需要交叉引用
答案 0 :(得分:1)
您可以使用ismember
找到这些缺失的位置,因此如果a
是控制向量而b
是缺失的数据向量ind=find(ismember(a,b)==0);
,则会为您提供a
中遗漏了b
。
例如:
a=1:10;
b=[1:2 4:5 7:10];
ind=find(ismember(a,b)==0);
ind =
3 6
为了b
只在
for n=1:numel(ind)
b=[b(1:ind(n)-1) , 0 , b(ind(n):end)];
end
b =
1 2 0 4 5 0 7 8 9 10