导入CSV没有头到D3 -数据与数字和字符串

Importing CSV without headers into D3 - data with both numbers and strings

本文关键字:数据 数字 字符串 D3 CSV 导入      更新时间:2023-09-26

我正在一个可视化工作,我需要导入一些csv数据。假设csv文件是这样的:

1,4,abc
2,7,def
3,5,ghi
...

csv文件没有头,所以在做搜索时,我有一些代码看起来像这样:

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;
        }
    });
});