Some confusion on polyfit?

2 views (last 30 days)
Jesse
Jesse on 21 Aug 2014
Commented: Star Strider on 21 Aug 2014
Greetings all,
This one is throwing me for a loop. So I have some data that I was preforming a linear fit on with the basic fit tool GUI, and I receive the coefficients
Coefficients:
p1 = -0.0068338
p2 = 3.9156
Cool - so I wanted to double verify if these numbers were good, so I used the polyfit command:
[fitResults1,S1,mu1] = polyfit(xdata1,ydata1,1)
but I get different coefficients:
-0.1138 2.4694
So, I generated code from the plot to show me what command they are using to get the first sent of coefficients, and they are using polyfit like me, except it's of the form:
fitResults1 = polyfit(xdata1, ydata1, 1)
Notice it's not in brackets as described in http://www.mathworks.com/help/matlab/ref/polyfit.html
but why are the coefficients so different between the two? I double checked everything (i.e., if xdata1 was the x data from my plot and ydata1 was the y data from my plot, and it was).
Did I stumble on a bug?
Thanks!

Accepted Answer

Star Strider
Star Strider on 21 Aug 2014
Not a bug at all.
When you used:
[fitResults1,S1,mu1] = polyfit(xdata1,ydata1,1)
you invoked the centreing and scaling of x that polyfit does if you ask for the mu output. You’re fitting different x-data.
  8 Comments
Jesse
Jesse on 21 Aug 2014
Ok cool thanks Star! I will try that!
Star Strider
Star Strider on 21 Aug 2014
My pleasure!

Sign in to comment.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!