如何以CSV格式导出特定列?

时间:2016-06-01 09:34:25

标签: javascript d3.js

我有data.csv文件:

Q,W,E,R,T,Y
A,S,D,F,G,H

要加载此文件,我使用此代码:

d3.text("data.csv", function(data) {
    parsedCSV = d3.csv.parseRows(data);
    // Some data manipulations...
    // How to export 2nd & 4th column in CSV format?
}

如何从CSV fromat中的 parsedCSV 对象导出第2和第4列?

2 个答案:

答案 0 :(得分:2)

最简单的方法可能是提供一个访问者函数作为d3.csv.parseRows()的第二个参数:

var columns;

d3.text("data.csv", function(data) {
  columns = d3.csv.parseRows(csv, function(row) {
    return [row[1], row[3]];
  });
};

来自docs

  

为CSV文件中的每一行调用此函数,将当前行和索引作为两个参数传递。函数的返回值替换返回的行数组中的元素;

答案 1 :(得分:1)

尝试:

d3.text("data.csv", function(data) {
    var header = data.split('\n')[0].split(',').map(function(name) {
        return name.trim();
    });
    var parsedCSV = d3.csv.parseRows(data);
    var columns = parsedCSV.map(function(row) {
        return [row[header[1]], row[header[3]]];
    });
});