The inconsistency of polyfit function

2 views (last 30 days)
Aleksy Barski
Aleksy Barski on 8 Oct 2019
Answered: Stephan on 8 Oct 2019

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

Answers (1)

Stephan
Stephan on 8 Oct 2019
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.

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!