【发布时间】:2019-04-17 12:24:01
【问题描述】:
我目前正在处理一个相当大的数据集,因此我希望通过将数据嵌套在新变量“nested_data”中来缩小数据变量。
这是我正在使用的数据:
Landen,"Perioden","SITC","Onderwerpen_1","Waarde eenheid","Waarde"
Afghanistan,"2012","0 Voeding en levende dieren","Invoerwaarde","mln euro","1"
Afghanistan,"2012","1 Dranken en tabak","Invoerwaarde","mln euro","0"
Afghanistan,"2012","2 Grondstoffen niet eetbaar behalve...","Invoerwaarde","mln euro","."
Afghanistan,"2012","3 Minerale brandstoffen smeermiddele...","Invoerwaarde","mln euro","."
Afghanistan,"2012","4 Dierlijke en plantaardige oliën en ...","Invoerwaarde","mln euro","."
Afghanistan,"2012","5 Chemische producten","Invoerwaarde","mln euro","0"
Afghanistan,"2012","6 Fabricaten hoofdzakelijk gerangschi...","Invoerwaarde","mln euro","0"
Afghanistan,"2012","7 Machines en vervoermaterieel","Invoerwaarde","mln euro","1"
Afghanistan,"2012","8 Diverse gefabriceerde goederen","Invoerwaarde","mln euro","1"
Afghanistan,"2012","9 Niet afzonderlijk genoemde goederen","Invoerwaarde","mln euro","0"
我希望这是汇总的结果:
[
{
"key": "0 Voeding en levende dieren",
"value": 1
},
{
"key": "1 Dranken en tabak",
"value": 0
},
{
"key": "2 Grondstoffen niet eetbaar behalve...",
"value": 7
},
{
"key": "3 Minerale brandstoffen smeermiddele...",
"value": 1
},
{
"key": "4 Dierlijke en plantaardige oliën en ...",
"value": 9
},
{
"key": "5 Chemische producten",
"value": 4
},
{
"key": "6 Fabricaten hoofdzakelijk gerangschi...",
"value": 12
},
{
"key": "7 Machines en vervoermaterieel",
"value": 3
},
{
"key": "8 Diverse gefabriceerde goederen",
"value": 0
},
{
"key": "9 Niet afzonderlijk genoemde goederen",
"value": 13
}
]
我尝试过像这样使用 d3 汇总:
.rollup(function(d){
return d.Waarde;
})
这有以下结果:
我的第二次尝试是使用'map',如下:
.rollup(function(value){
return value.map(function(d){
return d.Waarde;
})
})
我更喜欢这个结果,但它仍然不是我想要的:
虽然此方法确实为对象添加了正确的值,但它会将其放入一个数组中('map' 显然是这样做的)。但是我希望它不要将值放入数组中,而只是作为键的值。
【问题讨论】:
-
添加样本输入 json,预期输出 json。
-
编辑了问题。
标签: javascript d3.js rollup