statistics

    3.3.0 • Public • Published

    statistics

    a reduce function that calculates mean and standard deviation in one pass

    I first wrote this module a long long time ago, and i used an object oriented api. Today I needed to serialize a stats output to JSON, and then later parse it, and keep using it. Continuing to use an OO api would mean a bunch of glue code, so I rewrote it as a reduce function.

    example

    var stats = require('statistics')
     
    console.log([1,2,3].reduce(stats))
    => {
      mean: 2,
      stdev: 0.8164965809277263,
      count: 3,
      sum: 6,
      sqsum: 14
    }

    you probably only want to have the mean and stdev, the other fields are necessary for the reduce function however.

    mutating reduce: require('statistics/mutate')

    sometimes, a mutating reduce is prefured. this eases garbage collection, and allows you to maintain a reference to an updating value.

    otherwise the api is the same.

    functional is better than object oriented

    statistics@2 and earlier used an object oriented api, but then I needed to serialize and parse a stats object and keep using it. That was incredibly easy with a reduce function, but would have meant a bunch of ugly glue code with OO.

    LICENSE

    MIT

    Keywords

    none

    Install

    npm i statistics

    DownloadsWeekly Downloads

    561

    Version

    3.3.0

    License

    none

    Last publish

    Collaborators

    • dominictarr