quadReg property
Calculate quadratic regression of a set of points: Returns a list of form y =
ax^2 + bx + c, with quadReg[0]
being a, quadReg[1]
being b, and quadreg[2]
being c.
Implementation
List<num> get quadReg {
var yy = <double>[];
var xx = <double>[];
for (var numb in y) {
yy.add(numb.toDouble());
}
for (var numb in x) {
xx.add(numb.toDouble());
}
var xcol1 = List<double>.filled(xx.length, 1.0);
var xcol3 = List<double>.filled(xx.length, 0);
for (var i = 0; i <xx.length; i++) {
xcol3[i] = pow(xx[i],2).toDouble();
}
var Y = Matrix([yy]).transpose();
var X = Matrix([xcol1, xx, xcol3]).transpose();
var B = (X.transpose() * X).inverse() * X.transpose() * Y;
var c = B[0][0];
var b = B[1][0];
var a = B[2][0];
return [a,b,c];
}