Which is the best degree of the polynomial?

2 Ansichten (letzte 30 Tage)
Sakusan Puwanendran
Sakusan Puwanendran am 22 Nov. 2017
I have to find an equation that models the velocity with time with the data given. I believe the fourth degree is the ideal one. Can someone confirm that please? Also, is the basic fitting and the polyfit function the same thing? The data is
T = table([0;10;15;20;32;59;62;125],[0;56.40;97.23;136.25;226.16;403.86;440.44;1265.23]);
T.Properties.VariableNames = {'Time' 'Velocity'};
v=T.Velocity;
t=T.Time;

Akzeptierte Antwort

Image Analyst
Image Analyst am 22 Nov. 2017
I think orders 2 and 3 fit better.
T = table([0;10;15;20;32;59;62;125],[0;56.40;97.23;136.25;226.16;403.86;440.44;1265.23]);
T.Properties.VariableNames = {'Time' 'Velocity'}
v=T.Velocity;
t=T.Time;
plot(t, v, 'b*-', 'LineWidth', 3, 'MarkerSize', 18);
grid on;
tFit = linspace(min(t), max(t), 500);
hold on;
for order = 1 : 4
coefficients = polyfit(t, v, order);
vFit = polyval(coefficients, tFit);
plot(tFit, vFit, '-', 'LineWidth', 1);
end
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0, 0.04, 1, 0.96]);
You don't want to do over fitting. It can lead to really bad values in between the training points. Look how much the 4th order curve varies from "reasonable" between 90 and 110.
  1 Kommentar
Sakusan Puwanendran
Sakusan Puwanendran am 22 Nov. 2017
I get a similar shape as yours for the 4th degree when using the basic fitting function on the graph figure however when I use the polyfit function I get a different function. Could you explain what I'm doing wrong? My code for polyfitting
p4 = polyfit(t,v,4) %4th DEGREE POLYNOMIAL FITTING
f4 = polyval(p4,t);
plot(t,v,t,f4)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Linear and Nonlinear Regression finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by