如何解决如何使用JavaScript UDF将Azure Stream Analytics中的“类似于字典”的结构转换为多维数组?
使用Azure流分析的CollectTop
聚合函数后,我得到了一个类似于json的结构,该结构似乎像是Dictionary of Dictionary。
我需要将其转换为多维数组,然后传递给AzureML UDF。
我的问题主要是关于如何在javascript-UDF中解释此结构,因为我对Java完全陌生。
这是一个示例记录(使用CollectTop
),但是挑战在于我的JavaScript UDF应该是什么样子?
[
{"rank":1,"value":{"engineid":"engine001","tmp":-0.0019,"hum":-0.0002,"eventtime":4}},{"rank":2,"tmp":-0.0026,"eventtime":2}},{"rank":3,"tmp":0.0003,"eventtime":1}}
]
根据以上数据结构,我很想生成以下数组。 (采用“ tmp和嗡嗡声”字段)
[[-0.0019,-0.0002],[-0.0026,[0.0003,-0.0002]]
欢迎任何帮助或见识。
这个问题与另外两个问题有关:
- CollectTop is returning more rows than I would expect in Azure Stream Analytics
- Call Azure Stream Analytics UDF with multi-dimensional array of last 5 records,grouped by record
最诚挚的问候
解决方法
var input = [
{"rank":1,"value":{"engineid":"engine001","tmp":-0.0019,"hum":-0.0002,"eventtime":4}},{"rank":2,"tmp":-0.0026,"eventtime":2}},{"rank":3,"tmp":0.0003,"eventtime":1}}
];
console.log(getOutput(input));
function getOutput(input){
var output = [];
for(var x in input){
var array = [];
array.push(input[x].value.tmp);
array.push(input[x].value.hum);
output.push(array);
}
return output;
}
这是您需要的吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。