The inconsistency of polyfit function

2 次查看(过去 30 天)

x=[1,2,3,4,5];
y=3*x.^2+7*x+12;
p1=plifit(x,y,2);
[p2,S]=polyfit(x,y,2);
[p3,S,mu]=polyfit(x,y,2);
p1
p2
p3
Why p3 not same as p2 and p1

回答(1 个)

Stephan
Stephan 2019-10-8
From the documentation:
[p,S,mu] = polyfit(x,y,n) also returns mu, which is a two-element vector with centering and scaling values. mu(1) is mean(x), and mu(2) is std(x). Using these values, polyfit centers x at zero and scales it to have unit standard deviation.
also in the related example:
Use polyfit with three outputs to fit a 5th-degree polynomial using centering and scaling, which improves the numerical properties of the problem. polyfit centers the data in year at 0 and scales it to have a standard deviation of 1, which avoids an ill-conditioned Vandermonde matrix in the fit calculation.

类别

Help CenterFile Exchange 中查找有关 Polynomials 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by