compute-idr

Computes the interdecile range of an array of values.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
compute-idr
301.0.18 years ago8 years agoMinified + gzip package size for compute-idr in KB

Readme

Interdecile Range
!NPM versionnpm-imagenpm-url !Build Statustravis-imagetravis-url !Coverage Statuscoveralls-imagecoveralls-url !Dependenciesdependencies-imagedependencies-url
Computes the interdecile range (idr) for an array of values.

Installation

$ npm install compute-idr

For use in the browser, use browserify.

Usage

To use the module,
var idr = require( 'compute-idr' );

idr( arr, opts )

Computes the interdecile range provided an input array.
var unsorted = [ 8, 2, 3, 9, 5, 1, 4, 10, 7, 0, 6 ];

var r = idr( unsorted );
// returns 8

If the input array is already sorted in ascending order, set the sorted flag to true.
var sorted = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ];

var r = idr( sorted, {'sorted': true} );
// returns 8

Additional options are the same as for the quantile module.

Examples

var data = new Array( 100 );

for ( var i = 0; i < data.length; i++ ) {
    data[ i ] = Math.round( Math.random()*100 );
}

console.log( idr( data ) );

To run the example code from the top-level application directory,
$ node ./examples/index.js

Notes

If the input array is not sorted in ascending order, the function is O( N log( N ) ). If the input array is sorted, the function is O(1).

Tests

Unit

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.

Test Coverage

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

License

MIT license.

Copyright

Copyright © 2014. Rebekah Smith.