How to generate a function from x-y vectors?

68 Ansichten (letzte 30 Tage)
Ajay Goyal
Ajay Goyal am 6 Feb. 2017
Kommentiert: Ghenam Dahmane am 4 Mär. 2022
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];
  2 Kommentare
the cyclist
the cyclist am 6 Feb. 2017
Your question is not clear. What does "use these vectors in function form" mean?
Do you mean you want to find a function f(x) that will (approximately?) fit the x-y data? If so, what type of function? A polynomial?
Ajay Goyal
Ajay Goyal am 6 Feb. 2017
Bearbeitet: Ajay Goyal am 6 Feb. 2017
If I do not get expression; its ok. I just want to create a funtion from these vectors so that further calculations like Fourier series etc can be done

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Nicolas Schmit
Nicolas Schmit am 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.
syms f(x)
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));
  2 Kommentare
Ajay Goyal
Ajay Goyal am 4 Sep. 2017
Thank You, Nicolas Schmit
Ghenam Dahmane
Ghenam Dahmane am 4 Mär. 2022
Thank you for your help Nicolas Schmit

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (3)

Yifan Ma
Yifan Ma am 6 Feb. 2018
What you are looking for is map container. https://de.mathworks.com/help/matlab/ref/containers.map-class.html

Luca
Luca am 31 Mär. 2020
Bearbeitet: Luca am 31 Mär. 2020
Hi,
I have 2 vector (x, y) and I desire math expression y=f(x)
x must be syms. How to?
tnks
  2 Kommentare
Ajay Goyal
Ajay Goyal am 31 Mär. 2020
Bearbeitet: Ajay Goyal am 31 Mär. 2020
Hi,
As much I did understood your query, you wish to establish relation as y=f(x) and values of x are not known. To answer, I believe, it is not possible as the values of x and y is the first necessity to develop a function. Then only you may use it to predict y for input values of x.
Contrary, if you just want to define a function, you may do it following way:
%%%%Main File:
syms x
[ y ] = Untitled2( x )
%%%%Function file:
function [ y ] = Untitled2( x ) %%%%same name as in main file. Func. file will be stored with this name
y=x.^2; %%%%wrtite the function. Say
end
Kindly let me know, if your query has been resolved.
Best Luck
Ajay
Ajay Goyal
Ajay Goyal am 31 Mär. 2020
both files has to be in the working folder

Melden Sie sich an, um zu kommentieren.


Luca
Luca am 31 Mär. 2020
Bearbeitet: Luca am 31 Mär. 2020
For you.

Community Treasure Hunt

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

Start Hunting!

Translated by