我有一些数据,在 csv 的给定列中,有六个可能的值: 1,2,3,4,5,NaN。
我目前正在尝试使用 d3.nest 和 rollup 函数对数据进行分组。我的目标是对数据进行分组,但在最终输出中排除“NaN”值。
这是我当前的代码:
var nested = d3.nest()
.key(function(d){return d[question];
})
.rollup(function(leaves){
var total = data.length
var responses = leaves.length;
return {
'responses' : responses,
'percent' : responses/total
};
})
.entries(data)
正如您所看到的,我想返回每个类别的计数以及它们所代表的总数的百分比。删除 NaN 后,我还希望删除以所有其他类别的百分比值表示的 NaN,以便它们总和为 100%。
最佳答案
最简单的方法是在将数据传递给 d3.nest()
之前删除包含 NaN
的行:
var filtered = data.filter(function(d) { return d.question !== 'NaN'; });
关于javascript - 使用 D3 嵌套函数忽略组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33572531/