How to Fit Tabular Data

26 views (last 30 days)
Christopher Dottellis
Christopher Dottellis on 19 Jan 2021
Answered: Nitin Kapgate on 9 Feb 2021
I have a table with two variables, x and y. For each x,y pair there is a z.
I'm trying to find a two variable function that can represent this table. I have been trying to use fit() but it says that the format of my vectors is off. So I did the example and looked at the three vectors loaded in.
load franke;
surffit = fit([x,y],z,'poly23','normalize','on')
I find that the vectors , x, y, and z are all the same dimension. However, in my mind z = f(x,y) should be a matrix of values with dimensions size(x) by size(y). What is this fit function actually fitting then?
  1 Comment
Christopher Dottellis
Christopher Dottellis on 19 Jan 2021
To clarify, this data is sparse. Might it just be easier to create the function by hand?

Sign in to comment.

Answers (1)

Nitin Kapgate
Nitin Kapgate on 9 Feb 2021
'z' vector should be of the same size as 'x' and 'y' vectors. The fit function tries to approximately fit a curve or surface to the data using different fitting techniques (fit type) etc.
You can refer to this example that demonstrates how to fit a surface using variables in a MATLAB Table.

Community Treasure Hunt

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

Start Hunting!