flow-msum

0.0.1 • Public • Published

flow-msum

Transform stream which calculates a sliding-window sum (moving-sum) over a numeric data stream.

Installation

$ npm install flow-msum

Examples

var eventStream = require('event-stream'),
	sumStream = require('flow-msum');

// Create an array containing random numbers:
var randoms = new Array( 50 );
for (var i = 0; i < randoms.length; i++) {
    randoms[i] = Math.round(Math.random() * 100);
}

// Create a readable stream from an array:
var randStream = eventStream.readArray(randoms);

// Create a new moving sum stream:
var myStream = sumStream()
	.window( 7 )
	.stream();

// Pipe the data:
randStream.pipe(myStream)
    .pipe(eventStream.map(function(d,clbk){
		clbk(null,d.toString()+'\n');
    }))
    .pipe(process.stdout);

To run the example code from the top-level application directory,

$ node ./examples/index.js

Tests

Unit tests use the Mocha test framework with Chai assertions.

Assuming you have globally installed Mocha, execute the following command in the top-level application directory to run the tests:

$ mocha

All new feature development should have corresponding unit tests to validate correct functionality.

License

MIT license.


Copyright

Copyright © 2014. Rebekah Smith.

Package Sidebar

Install

npm i flow-msum

Weekly Downloads

0

Version

0.0.1

License

none

Last publish

Collaborators

  • kgryte