Package Exports
- regression
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 (regression) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
regression.js is a javascript library containing a collection of least squares fitting methods for finding a trend in a set of data. It currently contains methods for linear, exponential, logarithmic, power and polynomial trends.
Usage
Most regressions require only two parameters - the regression method (linear, exponential, logarithmic, power or polynomial) and a data source. A third parameter can be used to define the degree of a polynomial when a polynomial regression is required.
regression.js will return an object containing an equation array and a points array.
Linear regression
equation: [gradient, y-intercept]
in the form y = mx + c
var data = [[0,1],[32, 67] .... [12, 79]];
var result = regression('linear', data);
Linear regression through the origin
equation: [gradient]
in the form y = mx
var data = [[0,1],[32, 67] .... [12, 79]];
var result = regression('linearThroughOrigin', data);
Exponential regression
equation: [a, b]
in the form y = ae^bx
Logarithmic regression
equation: [a, b]
in the form y = a + b ln x
Power law regression
equation: [a, b]
in the form y = ax^b
Polynomial regression
equation: [a0, .... , an]
in the form a0x^0 ... + anx^n
var data = [[0,1],[32, 67] .... [12, 79]];
var result = regression('polynomial', data, 4);
Lastvalue
Not exactly a regression. Uses the last value to fill the blanks when forecasting.
Filling the blanks and forecasting
var data = [[0,1], [32, null] .... [12, 79]];
If you use a null
value for data, regressionjs will fill it using the trend.