comparing two vectos and inserting where numbers are missing
显示 更早的评论
Hi, Have tried various things. I have 2 vectors - a control vector called time (say m by 1) and a matrix call it b of (n by 2) m >n for example
time b
1000 1000 5
2000 2000 10
3000 4000 15
4000 5000 18
5000 6000 20
6000 8000 25
7000 9000 30
8000
9000
10000
i want matrix b to fill in the missing times (ie where missing) and a corresponding value in coloumn 2 of 0
so the output would look like
1000 5
2000 10
3000 0 (this line is new)
4000 15
5000 18
6000 20
7000 0 (this line is new)
8000 25
9000 30
10000 0 (this line is new)
i have mangaged to index the missing spaces with
ind = find(ismember(time,b(:,1)) ==0) which returns 3 7 10 ie the missing places but not sure where to go. more than happy to ignore totlaly what i have done so far.
采纳的回答
更多回答(1 个)
Azzi Abdelmalek
2013-3-5
编辑:Azzi Abdelmalek
2013-3-5
b=[1000 5
2000 10
3000 0
4000 15
5000 18
6000 20
7000 0
8000 25
9000 30
10000 0 ]
t=b(:,1)
y=b(:,2)
t1=t(find(y));
y1=y(find(y));
yi=interp1(t1,y1,t)
类别
在 帮助中心 和 File Exchange 中查找有关 Get Started with MATLAB 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!