anova
Version:
Analysis of Variance (ANOVA)
70 lines (61 loc) • 1.28 kB
JavaScript
// ANOVA (Analysis of Variance)
// Luke Mitchell, April 2016
// https://github.com/lukem512/anova
var anova = require('../src/anova');
var tests = [
{
name: 'Simple ANOVA test #1',
expected: 0.8571,
rejected: false,
samples: [
[],
[]
]
},
{
name: 'Simple ANOVA test #2',
expected: 50,
rejected: false,
samples: [
[],
[],
[]
]
},
{
name: 'Simple ANOVA test #3',
expected: 8.2540,
rejected: false,
samples: [
[],
[],
[],
[]
]
},
// http://www.cimt.plymouth.ac.uk/projects/mepres/alevel/fstats_ch7.pdf
{
name: 'Simple ANOVA test #4',
expected: 15.5,
rejected: false,
samples: [
[],
[],
[]
]
},
];
var returnCode = 0;
tests.forEach(function(t) {
try {
var u = anova.test(t.samples);
if (!t.expected) throw Error('Unexpected results');
if (Math.abs(u - t.expected) > 0.0001) throw Error('Returned results did not match expected results (' + u + ')');
} catch (err) {
if (!t.rejected) {
console.error(t.name, err);
returnCode = 1;
}
}
});
process.exit(returnCode);