Find value in interpolated data

Assume I have a vector of data y(nx1) which correspond to a time vector t(nx1).
What I need is some way to find a certain value of y for an arbitrary point of time. Lets say t covers a timespan of 0 to 10 seconds. I want to get the corresponding value of y for t=2.334.
Now if there is a t=2.334 exactly in the time vector I could find the corresponding entry in y. But if one entry reads t=2.1 and the next t=2.5 I don't have a corresponding value.
I would like to interpolate y so that I can find a value for any given time.
However I am fairly new to Matlab. Could someone tell me how to do this the best way?

 Accepted Answer

Use interp1. It's exactly what you need
yi = interp1(t,y,2.2334);

More Answers (1)

Check out the interp1 function as well as the spline function.
For your example, you can find the value for t=2.334 given t and y using linear interpolation with interp1:
myval = interp1(t,y,2.334);
Hope this helps.

Categories

Find more on Interpolation in Help Center and File Exchange

Products

Asked:

on 17 Nov 2015

Commented:

Can
on 25 Nov 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!