Javascript 如何从D3.js中的csv文件创建嵌套对象数组?

Javascript 如何从D3.js中的csv文件创建嵌套对象数组?,javascript,csv,d3.js,Javascript,Csv,D3.js,这个问题使用的数据与我之前的一个问题相同,但问题不同。我有一个csv文件,如下所示: name,score,date Bob,93,2014 Bob,85,2015 Barry,70,2015 ... 没有两个人有相同的名字,但是一个人可以有多个条目。如何在d3.csv回调函数中创建如下所示的数组: [{name: "Bob", values: [ {score: 93, date: 2014}, {score: 85, date: 2015}]} {name: "Barry",

这个问题使用的数据与我之前的一个问题相同,但问题不同。我有一个csv文件,如下所示:

name,score,date
Bob,93,2014
Bob,85,2015
Barry,70,2015
...
没有两个人有相同的名字,但是一个人可以有多个条目。如何在d3.csv回调函数中创建如下所示的数组:

[{name: "Bob", values: [
   {score: 93, date: 2014},
   {score: 85, date: 2015}]}
 {name: "Barry", values: [
   {score: 70, date: 2015}]},
...
通常情况下,我可以使用普通javascript实现这一点,但是使用
arrayName[objectIndex].objectPropertyName访问属性值在d3回调函数中不起作用。

函数将csv数据转换为键值对。查看链接以查看控制台中的对象。要获取最小最大数据,请参阅


在您回答之前,我使用了d3.nest()。我试图获得最大分数,但在使用d3.max()时难以访问值。请参阅我的更新答案,我在d3中使用了最小最大值函数来绘制刻度。
d3.csv("data.csv", function(error, data) {
    console.log(data);
    var updated = d3.nest().key(function(d) {
        return d.name;
    }).sortKeys(d3.ascending).entries(data);
    console.log(updated);
})