读取数据D3时删除行

时间:2012-10-16 19:38:48

标签: javascript csv d3.js

假设我有一个示例文件sample.csv:

row,col,value
1,1,2
1,2,3
1,3,NA

在d3中读取数据时,您会执行以下操作:

d3.csv("sample.csv", function(data) {
    data.forEach(function(d) {
    d.value = +d.value;
});

但是,对于NA值+ d.value将返回NaN。如何从数据中排除NaN值。即读取数据,并仅获取具有数值

的行

谢谢!

1 个答案:

答案 0 :(得分:7)

您可以在尝试添加数据之前调用isNaN

d3.csv('sample.csv', function(data) {
    data = data.filter(function(d){
        if(isNaN(d.value)){
            return false;
        }
        d.value = parseInt(d.value, 10);
        return true;
    });
});

这假设您的数字都是十进制整数。