Skip to content
Snippets Groups Projects
Commit 2037937e authored by stevereis's avatar stevereis
Browse files

Add flatten data + empty metadata

parent 06f90df9
No related branches found
No related tags found
No related merge requests found
......@@ -6,27 +6,40 @@ import * as jsonata from 'jsonata'; // old import style needed because of 'expor
export const transientToTable = jsonata(`
(
$e := function($x) {(
($x != null) ? $x : ''
($x != null) ? $x : ''
)};
$fn := function($o, $prefix) {
$each($o, function($v, $k) {(
$name := $join([$prefix,$k], '/');
$type($v) = 'object' ? $fn($v, $name): {
$name: $v
}
)}) ~> $merge()
};
result.data.[
$.single.*@$p#$i.{
'groupBy' : 'single',
'name': $keys(%)[$i],
'metadatas': $keys(*).{
'name': $,
'type': 'string'
},
'data' : [
[$keys(%)[$i], $p.*.($e(num_total))],
['Datapoints', $p.*.($e(num_datapoints))],
['Nulls', $p.*.($e(num_nulls))],
['std', $p.*.data.($e(std))],
['max', $p.*.data.($e(max))],
['min', $p.*.data.($e(min))],
['mean', $p.*.data.($e(mean))]
]
}
$.single.*@$p#$i.{
'groupBy' : 'single',
'name': $keys(%)[$i],
'metadatas': $append("", $keys(*)).{
'name': $,
'type': 'string'
},
'data' : [
[$keys(%)[$i], $p.*.($e(num_total))],
['Datapoints', $p.*.($e(num_datapoints))],
['Nulls', $p.*.($e(num_nulls))],
$p.*.data.($fn($)) ~> $reduce(function($a, $b) {
$each($a, function($v, $k) {(
$val := $lookup($b,$k);
{
$k : [$v, ($val != null) ? $val : '']
}
)}) ~> $merge()
}) ~> $each(function($v, $k) {$append($k,$v)})
]
}
]
)
`);
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment