Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将不带标题的CSV导入D3-包含数字和字符串的数据_Javascript_Csv_D3.js - Fatal编程技术网

Javascript 将不带标题的CSV导入D3-包含数字和字符串的数据

Javascript 将不带标题的CSV导入D3-包含数字和字符串的数据,javascript,csv,d3.js,Javascript,Csv,D3.js,我正在进行一个可视化,我需要导入一些csv数据。假设csv文件如下所示: 1,4,abc 2,7,def 3,5,ghi ... d3.text("data.csv", function(text) { input = d3.csv.parseRows(text).map(function(row) { return row.map(function(value) { return +value; }); });

我正在进行一个可视化,我需要导入一些csv数据。假设csv文件如下所示:

1,4,abc
2,7,def
3,5,ghi
...
d3.text("data.csv", function(text) {
    input = d3.csv.parseRows(text).map(function(row) {
        return row.map(function(value) {
            return +value;
        });
    });
    // do stuff here
});
csv文件没有标题,因此进行搜索时,我有一些代码如下所示:

1,4,abc
2,7,def
3,5,ghi
...
d3.text("data.csv", function(text) {
    input = d3.csv.parseRows(text).map(function(row) {
        return row.map(function(value) {
            return +value;
        });
    });
    // do stuff here
});

这对于只包含数字的数据非常有效,但我的数据同时包含数字和字符串。如何修改此代码,以便仅将我选择的某些数据列转换为数字?

您可以使用
map
函数中元素的索引查看是否应将其转换为数字:

 input = d3.csv.parseRows(text).map(function(row) {
    return row.map(function(value, index) {
        if(index == 2) {
            return value;
        } else {
            return +value;
        }
    });
});

不过,这只适用于您的具体情况。

谢谢,这正是我所需要的。