How to generate a function from x-y vectors?
186 views (last 30 days)
Hello MATLAB users. I got two vectors (say x and y). Is there any way to create a function i.e. y=f(x). I do not want the expression. I just want to create the function in matlab for further calculations. For ease: x=[1 5 0 32 8]; y=[10 1 654 32 100];
Nicolas Schmit on 4 Sep 2017
You question is not very clear, so I will try to guess what you are trying to do.
If you want to define a purely symbolic function f(x), use the following syntax.
If you want to create a function from data points x and y, use the griddedInterpolant function to create a interpolation of x and y.
x=[1 5 0 32 8];
y=[10 1 654 32 100];
[~, index] = sort(x);
F = griddedInterpolant(x(index), y(index));
More Answers (3)
Yifan Ma on 6 Feb 2018
What you are looking for is map container. https://de.mathworks.com/help/matlab/ref/containers.map-class.html