JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 114534
  • Score
    100M100P100Q186974F
  • License MIT

Polynomial Regression

Package Exports

  • ml-regression-polynomial
  • ml-regression-polynomial/lib-esm/index.js
  • ml-regression-polynomial/lib/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (ml-regression-polynomial) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

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