regression
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/regression package

    2.0.1 • Public • Published

    regression-js

    npm version npm downloads

    regression-js is a JavaScript module containing a collection of linear least-squares fitting methods for simple data analysis.

    Installation

    This module works on node and in the browser. It is available as the 'regression' package on npm. It is also available on a CDN.

    npm

    npm install --save regression
    

    Usage

    import regression from 'regression';
    const result = regression.linear([[0, 1], [32, 67], [12, 79]]);
    const gradient = result.equation[0];
    const yIntercept = result.equation[1];

    Data is passed into the model as an array. A second parameter can be used to configure the model. The configuration parameter is optional. null values are ignored. The precision option will set the number of significant figures the output is rounded to.

    Configuration options

    Below are the default values for the configuration parameter.

    {
      order: 2,
      precision: 2,
    }

    Properties

    • equation: an array containing the coefficients of the equation
    • string: A string representation of the equation
    • points: an array containing the predicted data in the domain of the input
    • r2: the coefficient of determination (R2)
    • predict(x): This function will return the predicted value

    API

    regression.linear(data[, options])

    Fits the input data to a straight line with the equation y = mx + c. It returns the coefficients in the form [m, c].

    regression.exponential(data[, options])

    Fits the input data to a exponential curve with the equation y = ae^bx. It returns the coefficients in the form [a, b].

    regression.logarithmic(data[, options])

    Fits the input data to a logarithmic curve with the equation y = a + b ln x. It returns the coefficients in the form [a, b].

    regression.power(data[, options])

    Fits the input data to a power law curve with the equation y = ax^b. It returns the coefficients in the form [a, b].

    regression.polynomial(data[, options])

    Fits the input data to a polynomial curve with the equation anx^n ... + a1x + a0. It returns the coefficients in the form [an..., a1, a0]. The order can be configure with the order option.

    Example

    const data = [[0,1],[32, 67] .... [12, 79]];
    const result = regression.polynomial(data, { order: 3 });

    Development

    • Install the dependencies with npm install
    • To build the assets in the dist directory, use npm run build
    • You can run the tests with: npm run test.

    Install

    npm i regression

    DownloadsWeekly Downloads

    130,662

    Version

    2.0.1

    License

    MIT

    Last publish

    Collaborators

    • tom-alexander