Published
Edited
May 10, 2018
Insert cell
Insert cell
Type JavaScript, then Shift-Enter. Ctrl-space for more options. Arrow ↑/↓ to switch modes.

Insert cell
//Ordinary Least-Squares Method for Linear Regression
linearRegression = (x, y) => {
var xsum = 0;
var ysum = 0;
for (var i = 0; i < x.length; i++) {
xsum += x[i];
ysum += y[i];
}
var xmean = xsum / x.length;
var ymean = ysum / y.length;
var num = 0;
var den = 0;
for (var i = 0; i < x.length; i++) {
var xval = x[i];
var yval = y[i];
num += (xval - xmean) * (yval - ymean);
den += (xval - xmean) * (xval - xmean);
}
var m = num/den;
var b = ymean - m * xmean;
return {
slope: m,
intercept: b,
yCalc: function(x) { return this.slope * x + this.intercept }
}
}
Insert cell
Insert cell
Insert cell
Insert cell
olr=linearRegression(health, mana)
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more