ml-regression-polynomial
TypeScript icon, indicating that this package has built-in type declarations

3.0.0 • Public • Published

regression-polynomial

NPM version npm download build status Test coverage

Polynomial Regression.

Installation

$ npm i ml-regression-polynomial

Usage

import { PolynomialRegression } from 'ml-regression-polynomial';

const x = [50, 50, 50, 70, 70, 70, 80, 80, 80, 90, 90, 90, 100, 100, 100];
const y = [
  3.3, 2.8, 2.9, 2.3, 2.6, 2.1, 2.5, 2.9, 2.4, 3.0, 3.1, 2.8, 3.3, 3.5, 3.0,
];
const degree = 5; // setup the maximum degree of the polynomial

const regression = new PolynomialRegression(x, y, degree);

console.log(regression.predict(80)); // Apply the model to some x value. Prints 2.6.
console.log(regression.coefficients); // Prints the coefficients in increasing order of power (from 0 to degree).
console.log(regression.toString(3)); // Prints a human-readable version of the function.
console.log(regression.toLaTeX());
console.log(regression.score(x, y));

Options

An interceptAtZero option is available, to force $f(0) = 0$. Also, a "powers array" can be specified.

  • Using interceptAtZero
const regression = new PolynomialRegression(x, y, degree, {
  interceptAtZero: true,
});
  • Using the powers array
const powers = [0, 1, 2, 3, 4, 5];
const regression = new PolynomialRegression(x, y, powers);

powers could also be [1,2,3,4,5]or[1,3,5] and so on.

For intercepting at zero using an array, skip the zero in the array (the option interceptAtZero is ignored in this case.)

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i ml-regression-polynomial

Weekly Downloads

25,816

Version

3.0.0

License

MIT

Unpacked Size

40.5 kB

Total Files

13

Last publish

Collaborators

  • stropitek
  • targos
  • lpatiny
  • mljs-bot
  • maasencioh
  • jeffersonh44
  • andcastillo