Question on using interpolate function
Show older comments
I've the following
x = [1 2 3 4 5 6];
data = [0.1 0.2 0.3 0.4 0.4 0.4];
vq1 = interp1(data,x,0.4)
I want to find the x value at which data has 0.4 (first occurence).
I used interpolate. But the following error occurS
The grid vectors must contain unique points.
Any suggestions on how to proceed when data doesn't contain uniqe values will be helpful
1 Comment
Deepa Maheshvare
on 28 Jan 2020
Answers (2)
KSSV
on 28 Jan 2020
Use logical indexing:
x = [1 2 3 4 5 6];
data = [0.1 0.2 0.3 0.4 0.4 0.4];
vq1 = x(abs(data-0.4)<10^-5)
1 Comment
Deepa Maheshvare
on 28 Jan 2020
Edited: Deepa Maheshvare
on 28 Jan 2020
Bhaskar R
on 28 Jan 2020
"I want to find the x value at which data has 0.4 (first occurence)."
match_loc = find(data == 0.4);
val = x(x == match_loc(1)); % first occurance of 0.4
1 Comment
Deepa Maheshvare
on 28 Jan 2020
Categories
Find more on MATLAB 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!