Модификация данных ряда с использованием языка потоков в притоке - PullRequest
0 голосов
/ 09 мая 2019

У меня есть функция, которая получает 1-е значение из измерения каждые 5 минут.

ever5Mins1st = from(bucket: "Historian/oneday")
  |> range(start: dashboardTime)
  |> filter(fn: (r) => 
    r._measurement == "InventoryStock" and
    r._field =="Value"  and
    r.Location=="NYC"
  )
 |>window(every:5m)
 |>first()
 |>window(every:inf)

Теперь, если я хочу сделать разницу двух последовательных точек, я могу сделать это с помощью функции разности

 ever5Mins1st
 |>difference()

Но что, если мне нужно, я хочу получить сумму из каждых последовательных точек или каждые 5 баллов.

Я знаю, что могу написать пользовательские функции, которые получают данные по конвейеру.Но мне нужно написать цикл?Есть ли примеры циклов for и условных операторов?

// Function definition
add = (tables=<-) =>
  tables
    |> map(fn: (r) => //What should I do here, for loop?)

1 Ответ

0 голосов
/ 15 мая 2019

Я не верю, что это возможно в данный момент.Для этого потребуется функция chunk, чтобы разбить список на куски списков.

Я добавлю проблему во Flux и начну реализовывать эту функцию: +1:

...