Interpolating linearly between many values in a vector
1 view (last 30 days)
Show older comments
I am using a sensor which updates time information at 1Hz, but samples data at 1kHz. Therefore I have a time array like so:
t_old =
if the collect was n seconds long. I would like 999 other time stamps in between the already existing ones. So the result ought to be
t_new =
0 Comments
Answers (2)
Adam Danz
on 14 Aug 2019
Edited: Adam Danz
on 16 Aug 2019
Set the 'resampleRate' to 1000 if you want [1,2] to become [1.001, 1.002, ... 2.999].
'timestamps' is your original vector.
resampleRate = 1000;
timestamps = 1:10; %must be a vector
timeStampsResampled = reshape((timestamps(:) + linspace(0,1-1/resampleRate,resampleRate)).',1,[]);
0 Comments
See Also
Categories
Find more on Interpolation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!