Computes the Kruskal-Wallis test for equal medians.
The Kruskal-Wallis rank sum test evaluates for multiple samples the null hypothesis that their medians are identical. The Kruskal-Wallis test is a nonparametric test which does not require the data to be normally distributed.
To carry out the test, the rank sums S_h
of the individual groups are calculated. The test statistic is then calculated as
where N
denotes the total number of observations and t_{r(i)}
are the number of tied observations with rank i.
$ npm install compute-kruskal-test
For use in the browser, use browserify.
var kruskal = require( 'compute-kruskal-test' );
For input arrays a
, b
, ... holding numeric observations, this function calculates the Kruskal-Wallis rank sums test, which tests the null hypothesis that the medians in all k
groups are the same. The function returns an object holding the calculated test statistic K
, the pValue
of the test and the degrees of freedom (df
).
var kruskal = require( 'compute-kruskal-test' );
var x, y, z,
out,
table;
// data from Hollander & Wolfe (1973), 116.
x = [2.9, 3.0, 2.5, 2.6, 3.2];
y = [3.8, 2.7, 4.0, 2.4];
z = [2.8, 3.4, 3.7, 2.2, 2.0];
out = kruskal( x, y, z );
/*
{ H: 0.7714,
df: 2,
pValue: 0.6799 }
*/
table = out.toString();
/*
Kruskal-Wallis rank sum test.
null hypothesis: the medians of all groups are the same.
test statistic: 0.7714
df: 2
p-value: 0.68
*/
To run the example code from the top-level application directory,
$ node ./examples/index.js
Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:
$ make test
All new feature development should have corresponding unit tests to validate correct functionality.
This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-cov
Istanbul creates a ./reports/coverage
directory. To access an HTML version of the report,
$ make view-cov
Copyright © 2015. The Compute.io Authors.