gpt4 book ai didi

javascript - d3.nest() 将 csv 转换为 json

转载 作者:行者123 更新时间:2023-12-01 02:55:16 25 4
gpt4 key购买 nike

我想使用 d3.nest() 从 csv 创建嵌套 json 文件,但是我在正确嵌套时遇到问题。我的输出如下所示: enter image description here

这很接近但不完全 - 我希望这些值是 key 值(value)观: 0:等 1:等

这是我的代码:

d3.csv(“data/fifa-matches.csv”,函数(错误,matchesCSV){

    //Loads in the tree information from fifa-tree.csv and calls createTree(csvData) to render the tree.
matchesCSV.forEach(function(d, i) {

this.teamData = d3.nest()
.key(function(d) {
return d.Team;
})

.rollup(function(d) {
return {
Result: { 'Label': d.Result, 'Rank': 'test' },

// total: d3.sum(v, function(d) { return d.amount; }),
// avg: d3.mean(v, function(d) { return d.amount; })
}
})
.entries(matchesCSV);
console.log(this.teamData);
});

d3.csv("data/fifa-tree.csv", function(error, treeCSV) {

//Create a unique "id" field for each game
treeCSV.forEach(function(d, i) {
//console.log(d);
d.id = d.Team + d.Opponent + i;
d.type = d.Type;


});

任何正确方向的信息将不胜感激!

以下是 csv 结构的示例:

球队、对手、进球数、失球数、Delta 进球数、胜利、失利、结果巴西,德国,1,7,-6,0,1,半决赛德国、阿根廷、1,0,1,1,0,获胜者阿根廷、荷兰、0、0、0、1、0、半决赛荷兰、巴西、3,0,3,1,0,第四名巴西,哥伦比亚,2,1,1,1,0,四分之一决赛法国、德国,0,1,-1,0,1,四分之一决赛

最佳答案

如果您想指定与某个键对应的每个对象中的内容,可以使用.rollup()函数

this.teamData = d3.nest()
.key(function(d) {
return d.Team;
}).rollup(function(match_object) {
return {
opponent: match_object[0]["Opponent"],
Goals Made: match_object[0]["Goals Made"],
..etc...
}).entries(matchesCSV);

并从treeCSV返回一个数组

function ReturnTeam(teamname){
for(team in treeCSV) {
if(teamname === team.Name) {
return team;
}
}
}

关于javascript - d3.nest() 将 csv 转换为 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46739782/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com