将过滤器应用于组时,过滤的更改不会反映在我的mapreduced组中。我希望更改过滤 - 或
我的数据设置正常:
var rides = crossfilter(data),
all = rides.groupAll(),
gender = rides.dimension(function(d) { return d.gender; }),
gendersAvg = gender.group().reduce(reduceAddGender, reduceRemoveGender, reduceInitialGender).all(),
我的地图缩小功能设置如下:
function reduceAddGender(p, v) {
p.count++;
return p;
}
function reduceRemoveGender(p, v) {
p.count--;
return p;
}
function reduceInitialGender() {
return {
count: 0
};
}
我按照这样执行过滤:
gender.filter(function(d){ return d === parseInt(z[1]) || d === parseInt(z[0]) });
我的所有尺寸都反映了滤镜,除了一个。当我找到GendersAvg
后过滤的值时,这些值并不能反映过滤器。
想法?再次调用平均值也不会改变其值。
答案 0 :(得分:0)
最后,我决定创建一个单独的维度,执行我的过滤,以便所有组都反映其值。
duration = rides.dimension(function(d) { return d.timeonbike; }),
durations = duration.group(),
duration2 = rides.dimension(function(d) { return d.timeonbike; }),
durationsAvg = duration2.groupAll().reduce(reduceAddDuration, reduceRemoveDuration, reduceInitialDuration).value(),