Функции для временных рядов
Ниже приведённые функции предназначены для использования с агрегатными функциями timeSeries*(), такими как
timeSeriesInstantRateToGrid,
timeSeriesLastToGrid
и другими.
timeSeriesRange
Создает диапазон временных меток.
Синтаксис
Аргументы
start_timestamp- начало диапазона.end_timestamp- конец диапазона.step- шаг диапазона в секундах.
Возвращаемое значение
- Возвращает диапазон временных меток
[start_timestamp, start_timestamp + step, start_timestamp + 2 * step, ..., end_timestamp].
Примеры
Запрос:
Результат:
Примечания
- Если функция
timeSeriesRange()вызывается сstart_timestamp, равнымend_timestamp, то она возвращает массив из одного элемента, содержащий эту временную метку:[start_timestamp] - Функция
timeSeriesRange()аналогична функции range. Например, если тип временных меток —DateTime64(3)иstart_timestamp < end_timestamp, тоtimeSeriesRange(start_timestamp, end_timestamp, step)возвращает тот же результат, что и следующее выражение:
timeSeriesFromGrid
Преобразует массив значений [value1, value2, value3, ..., valueN] в массив кортежей
[(start_timestamp, value1), (start_timestamp + step, value2), (start_timestamp + 2 * step, value3), ..., (end_timestamp, valueN)].
Если некоторые из значений [value1, value2, value3, ...] равны NULL, функция не будет копировать такие значения NULL в результирующий массив,
но при этом всё равно увеличит текущую метку времени. Например, для [value1, NULL, value2] функция вернёт
[(start_timestamp, value1), (start_timestamp + 2 * step, value2)].
Текущая метка времени увеличивается на step до тех пор, пока не станет больше, чем end_timestamp, при этом каждой метке времени сопоставляется значение
из заданного массива. Если количество значений не совпадает с количеством меток времени, функция выбросит исключение.
Синтаксис
Аргументы
start_timestamp— начало временной сетки.end_timestamp— конец временной сетки.step— шаг временной сетки в секундах.values— массив значений[value1, value2, ..., valueN].
Возвращаемое значение
- Возвращает значения из исходного массива, совмещённые с метками времени в соответствии с регулярной временной сеткой, задаваемой
start_timestampиstep.
Примеры
Запрос:
Результат:
Примечание
Функция timeSeriesFromGrid(start_timestamp, end_timestamp, step, values) возвращает тот же результат, что и следующее выражение: