Last active
March 30, 2017 09:16
-
-
Save mojiAh/41616a26c4aaf11ce6a97de9b008d37f to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let sum_x: number = 0; | |
let sum_y: number = 0; | |
let sum_xy: number = 0; | |
let sum_xx: number = 0; | |
let count: number = 0; | |
/* | |
* We'll use those variables for faster read/write access. | |
*/ | |
let x: number = 0; | |
let y: number = 0; | |
let values_length: number = samples.length; | |
/* | |
* Nothing to do. | |
*/ | |
if (values_length === 0) { | |
return ; | |
} | |
/** | |
* in case we're dealing with single point selection | |
*/ | |
if (values_length === 1) { | |
return 1 ; | |
} | |
/* | |
* Calculate the sum for each of the parts necessary. | |
*/ | |
/* | |
for (let v: number = 0; v < values_length; v++) { | |
x = samples[v].lab_cs; | |
y = samples[v].mean; | |
sum_x += x; | |
sum_y += y; | |
sum_xx += x * x; | |
sum_xy += x * y; | |
count++; | |
} | |
console.log(sum_y); | |
/** | |
* Calculate m and b for the formular: y = x * m + b | |
*/ | |
let m: number = (count * sum_xy - sum_x * sum_y) / (count * sum_xx - sum_x * sum_x); | |
let b: number = (sum_y / count) - (m * sum_x) / count; | |
/** | |
* We will make the x and y result line now | |
*/ | |
let result_values_x: number[] = []; | |
let result_values_y: number[] = []; | |
for (let v: number = 0; v < values_length; v++) { | |
x = samples[v].lab_cs; | |
y = x * m + b; | |
result_values_x.push(x); | |
result_values_y.push(y); | |
} | |
console.log(result_values_y); | |
// return [result_values_x, result_values_y]; | |
return ; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment