我有一个类似这样的JSON数据:
[
{
"tone_id": "anger",
"score": 0.012,
"tone_name": "Anger"
},
{
"tone_id": "disgust",
"score": 0.002,
"tone_name": "Disgust"
},
{
"tone_id": "fear",
"score": 0.14,
"tone_name": "Fear"
},
{
"tone_id": "joy",
"score": 0.42,
"tone_name": "Joy"
}
]
我希望使用
jq
将其转换成以下样式:{
"anger": 0.012,
"disgust": 0.002,
"fear": 0.14,
"joy": 0.42
}
我能做的最好就是:
cat result.json | jq '.[] | { (.tone_id): .score }'
这给出了以下结果:
{
"anger": 0.012
}
{
"disgust": 0.002
}
{
"fear": 0.14
}
{
"joy": 0.42
}
我知道可以使用其他方法轻松地完成这个任务。只是想知道是否可以使用
jq
一行代码来实现?
tone_id
列表和它们各自的score
的列表... 我希望在我的最终对象中有与原始列表中元素数量相同的键。 - munikarmanishtone_id
和score
并将它们分别作为键和值放入最终输出中。我已经在上面添加了更具体的示例。 - munikarmanish