timeseries-aggregate

WebJar for timeseries-aggregate

Лицензия

Лицензия

Группа

Группа

org.webjars.npm
Идентификатор

Идентификатор

timeseries-aggregate
Последняя версия

Последняя версия

0.0.3
Дата

Дата

Тип

Тип

jar
Описание

Описание

timeseries-aggregate
WebJar for timeseries-aggregate
Ссылка на сайт

Ссылка на сайт

http://webjars.org
Система контроля версий

Система контроля версий

https://github.com/djsauble/timeseries-aggregate

Скачать timeseries-aggregate

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/org.webjars.npm/timeseries-aggregate/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>timeseries-aggregate</artifactId>
    <version>0.0.3</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/timeseries-aggregate/
implementation 'org.webjars.npm:timeseries-aggregate:0.0.3'
// https://jarcasting.com/artifacts/org.webjars.npm/timeseries-aggregate/
implementation ("org.webjars.npm:timeseries-aggregate:0.0.3")
'org.webjars.npm:timeseries-aggregate:jar:0.0.3'
<dependency org="org.webjars.npm" name="timeseries-aggregate" rev="0.0.3">
  <artifact name="timeseries-aggregate" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='timeseries-aggregate', version='0.0.3')
)
libraryDependencies += "org.webjars.npm" % "timeseries-aggregate" % "0.0.3"
[org.webjars.npm/timeseries-aggregate "0.0.3"]

Зависимости

Библиотека не имеет зависимостей. Это самодостаточное приложение, которое не зависит ни от каких других библиотек.

Модули Проекта

Данный проект не имеет модулей.

Given an array of timeseries data ordered from oldest to newest, aggregate the sum or average of values inside X periods of Y milliseconds each, ending at the date given.

Series data is expected to be an array of objects of the following format:

{
  timestamp: Date,
  value: Number
}

The output of summation is an array of objects of the following format:

{
  period: Date, // The start of the period being summed
  sum: Number   // The sum of values in the period
}

The output of averaging is an array of objects of the following format:

{
  period: Date,   // The start of the period being averaged
  average: Number // The average of values in the period
}

This algorithm is weighted toward calculations that favor the end of the series array (most recent values), as it iterates from end to start.

Usage

var Aggregate = require('../index');

var endDate = new Date("June 9, 2016 GMT-0000"),
    numPeriods = 2,
    periodDurationInMs = Aggregate.DAY_IN_MS * 2,
    series = [
      {
        timestamp: new Date("June 1, 2016 GMT-0000"),
        value: 1
      },
      {
        timestamp: new Date("June 2, 2016 GMT-0000"),
        value: 2
      },
      {
        timestamp: new Date("June 3, 2016 GMT-0000"),
        value: 3
      },
      {
        timestamp: new Date("June 4, 2016 GMT-0000"),
        value: 4
      },
      {
        timestamp: new Date("June 5, 2016 GMT-0000"),
        value: 5
      },
      {
        timestamp: new Date("June 6, 2016 GMT-0000"),
        value: 6
      },
      {
        timestamp: new Date("June 7, 2016 GMT-0000"),
        value: 7
      },
      {
        timestamp: new Date("June 8, 2016 GMT-0000"),
        value: 8
      },
      {
        timestamp: new Date("June 9, 2016 GMT-0000"),
        value: 9
      },
      {
        timestamp: new Date("June 10, 2016 GMT-0000"),
        value: 10
      },
      {
        timestamp: new Date("June 11, 2016 GMT-0000"),
        value: 11
      },
      {
        timestamp: new Date("June 12, 2016 GMT-0000"),
        value: 12
      },
    ];

// Aggregate the two 48-hour periods preceeding June 9th
Aggregate.sum(endDate, numPeriods, periodDurationInMs, series);

Версии библиотеки

Версия
0.0.3