w-statistic
Version:
A tool for statistical analysis.
132 lines (120 loc) • 3.21 kB
JavaScript
import regPoly from './src/regPoly.mjs'
async function test() {
let arr
let r
arr = [
[], [50, 2.8],
[], [70, 2.3],
[], [70, 2.1],
[], [80, 2.9],
[], [90, 3],
[], [90, 2.8],
[], [100, 3.5],
[]
]
r = await regPoly(arr, 2)
console.log(r)
// => {
// b: 7.960481099654818,
// m1: -0.15371134020614285,
// m2: 0.0010756013745701653
// }
arr = [
[], [50, 2.8],
[], [70, 2.3],
[], [70, 2.1],
[], [80, 2.9],
[], [90, 3],
[], [90, 2.8],
[], [100, 3.5],
[]
]
r = await regPoly(arr, 3)
console.log(r)
// => {
// b: 21.051572327842386,
// m1: -0.7142872117740979,
// m2: 0.0087657232709057,
// m3: -0.000034014675054462467
// }
arr = [
[], [50, 2.8],
[], [70, 2.3],
[], [70, 2.1],
[], [80, 2.9],
[], [90, 3],
[], [90, 2.8],
[], [100, 3.5],
[]
]
r = await regPoly(arr, 2, { useRegIntercept: false }) //不使用截距, 也就是截距b=0
console.log(r)
// => { b: 0, m1: 0.06524644304242452, m2: -0.00035672260356343373 }
arr = [
[], [50, 2.8],
[], [70, 2.3],
[], [70, 2.1],
[], [80, 2.9],
[], [90, 3],
[], [90, 2.8],
[], [100, 3.5],
[]
]
r = await regPoly(arr, 2, { interpX: 80 })
console.log(r)
// => {
// b: 7.960481099654818,
// m1: -0.15371134020614285,
// m2: 0.0010756013745701653,
// interpX: 80,
// interpY: 2.5474226804124473
// }
arr = [
[], [50, 2.8],
[], [70, 2.3],
[], [70, 2.1],
[], [80, 2.9],
[], [90, 3],
[], [90, 2.8],
[], [100, 3.5],
[]
]
r = await regPoly(arr, 2, { calcR2: true })
console.log(r)
// => {
// b: 7.960481099654818,
// m1: -0.15371134020614285,
// m2: 0.0010756013745701653,
// r2: 0.6732052768464256
// }
arr = [
[], [50, 2.8],
[], [70, 2.3],
[], [70, 2.1],
[], [80, 2.9],
[], [90, 3],
[], [90, 2.8],
[], [100, 3.5],
[]
]
r = regPoly(arr, 2, { useSync: true }) //使用同步函數(sync)
console.log(r)
// => {
// b: 7.960481099654818,
// m1: -0.15371134020614285,
// m2: 0.0010756013745701653
// }
arr = [
[],
[],
[],
]
r = await regPoly(arr, 1)
console.log(r)
// => { b: 3.0333333333333314, m1: -0.666666666666666 }
}
test()
.catch((err) => {
console.log(err)
})
//node g.regPoly.mjs