Как называется концепция: временной числовой набор данных с операциями суммирования / агрегирования? - PullRequest
2 голосов
/ 18 января 2012

У меня есть, скажем, ежедневный income набор числовых данных Временные свойства , например:

Date       Income
2012-01-03 12
2012-01-05 11
2012-01-06 28
2012-01-07 9
2012-01-08 15

Я выполняю несколько операций над ним:

  • Агрегация: группировка по неделям / сумма по значению;
  • Интерполяция;
  • Сдвиг / циклическое смещение за интервал времени;
  • Различное сглаживание;
  • Суммирование / вычитание наборов данных (в сочетании с интерполяцией);
  • Расчет разницы до следующего значения - в результате получается набор данных "ежедневное изменение дохода";

Другим примером является валюта rate дано в Эффективность интервалы типа:

StartDate  EndDate    Rate
2012-01-03 2012-01-04 12
2012-01-05 2012-01-05 11
2012-01-06 2012-01-06 28
2012-01-07 2012-01-07 9
2012-01-08 2012-01-12 15

и операции типа:

  • умножение income набора данных на rate набор данных;
  • преобразование income из одноразовых событий, заданных в последовательность Effectivities (до следующего известного значения) и наоборот;

Кроме того, набор Efiictivities может быть плотным (без пробелов) или с пробелами, может разрешать или запрещать перекрытия.

Как называется эта концепция?Например, я не нашел ничего подобного в ответах на этот вопрос .

Это своего рода числовое представление функции, но довольно специфичное.

В идеале я ищу библиотеку Java с поддержкой Hibernate, чтобы сделать это.

Ответы [ 2 ]

1 голос
/ 30 января 2012

Ключевым поисковым термином является «TimeSeries»

См .: https://stackoverflow.com/questions/950004/java-library-to-do-time-series-analysis

Здесь есть несколько хороших ссылок на реализации Java.

Но Java действительно не лучший язык для этого - возможно, попробуйте Python с Numpy или R.

1 голос
/ 18 января 2012

Если вы ищете набор алгоритмов, которые смотрят на входящий поток данных и извлекают из них свойства, взгляните на онлайн-алгоритмы .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...