Skip to content Accesskey=4Skip to sub-navigation Accesskey=3View our Accessibility Options MIT Information Systems Home About IS&T Contact IS&T Site Map Search Advanced Search
Getting StartedGetting Services by Topic or Alphabetically Getting Help

On This Page

[Help]

  

Quick Links

Top Level

Related Links

Ask OLC a question

Athena Consulting Homepage

Helpdesk Stock Answers (for Mac/PC questions)


POLYNOMIAL REGRESSIONS

To do polynomial regressions in matlab, you need to use the "polyfit"
function. To use it, you must enter your data into variables.  For
example:

	x = [1 2 3 4 5 6 7 8];
	y = [1 4 9 16 25 36 49 64];

Then, to do the regression, you'd do something like:

	c = polyfit(x,y,3);

This would fit it to a third order polynomial; to have it fit to a
higher order polynomial, you could just change the last argument to what
you want.

Then to see the fit polynomials in the example above, you can just type:

	c

In this case, Matlab returns:

	    0.0000    1.0000    0.0000   -0.0000

These are the coefficients in descending power of x, of the n-th order
polynomial that fits the vector y to x.


If you would like to plot both the data AND the result of fitting, you
can use the polyval function to do so.  Type:

	newy = polyval(c,x);

newy will be the vector containing the values of X evalated using the
coefficients of the polynomial that fits y to x.  To plot both the data
and the fitted data, type:

	plot(x,y,x,newy)


You can also find a polynomial in x and y that fits a given set of data
using the "poly2fit" and "poly2val" commands. Usage of these commands is
similar to "polyfit" and "polyval", except that x,y and z are matrices.
You can use the "meshgrid" command to transform a domain specified by two
vectors X and Y, into array form. Then

      c = poly2fit(x,y,z,3)

returns the coefficients of the fitted polynomial in descending powers
of x and y.

MIT Home | Getting Started | Getting Services | Getting Help | About IS&T | Accessibility
Ask a technology question or send a comment about this web page.