From a550f10c7b9dee7b006dd4a2000c2dc8509ef089 Mon Sep 17 00:00:00 2001 From: wssbck Date: Sun, 14 Sep 2014 20:58:30 +0200 Subject: [PATCH] Fix for incorrect weighted mean calculation --- crossfilter-helpers.js | 4 ++-- crossfilter-helpers.min.js | 2 +- index.js | 2 +- package.json | 2 +- src/basic.js | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/crossfilter-helpers.js b/crossfilter-helpers.js index cde8116..7103876 100644 --- a/crossfilter-helpers.js +++ b/crossfilter-helpers.js @@ -110,13 +110,13 @@ var exports = (function(e){ return { add : function(p, v){ p.count += w(v); - p.sum += w(v) ? fn_f(v) : 0; + p.sum += fn_f(v) * w(v); p.mean = p.count ? p.sum / p.count : 0; return p; }, remove : function(p, v){ p.count -= w(v); - p.sum -= w(v) ? fn_f(v) : 0; + p.sum -= fn_f(v) * w(v); p.mean = p.count ? p.sum / p.count : 0; return p; }, diff --git a/crossfilter-helpers.min.js b/crossfilter-helpers.min.js index dc358c3..baea1cd 100644 --- a/crossfilter-helpers.min.js +++ b/crossfilter-helpers.min.js @@ -1 +1 @@ -var exports=function(n){"use strict";return n.count=function(){return{add:function(n){return n.count++,n},remove:function(n){return n.count--,n},init:function(){return{count:0}},access:function(n){return n.count}}},n.sum=function(n){return{add:function(t,u){return t.sum+=n(u),t},remove:function(t,u){return t.sum-=n(u),t},init:function(){return{sum:0}},access:function(n){return n.sum}}},n.product=function(n){return{add:function(t,u){return t.product*=n(u),t},remove:function(t,u){return t.product/=n(u),t},init:function(){return{product:1}},access:function(n){return n.product}}},n.max=function(n){return{add:function(t,u){return t.max=n(u)>t.max?n(u):t.max,t},remove:function(t,u){return t.max=n(u)>t.max?n(u):t.max,t},init:function(){return{max:-1/0}},access:function(n){return n.max}}},n.min=function(n){return{add:function(t,u){return t.min=n(u)t.max?n(u):t.max,t},remove:function(t,u){return t.max=n(u)>t.max?n(u):t.max,t},init:function(){return{max:-1/0}},access:function(n){return n.max}}},n.min=function(n){return{add:function(t,u){return t.min=n(u)t.max?n(u):t.max,t},remove:function(t,u){return t.max=n(u)>t.max?n(u):t.max,t},init:function(){return{max:-1/0}},access:function(n){return n.max}}},n.min=function(n){return{add:function(t,u){return t.min=n(u)t.max?n(u):t.max,t},remove:function(t,u){return t.max=n(u)>t.max?n(u):t.max,t},init:function(){return{max:-1/0}},access:function(n){return n.max}}},n.min=function(n){return{add:function(t,u){return t.min=n(u)