Лучшие практики для эффективного анализа нескольких временных рядов - PullRequest
7 голосов
/ 20 октября 2011

У меня есть большое количество временных рядов (> 100), которые отличаются частотой дискретизации и периодом времени, для которого они доступны. Каждый временной ряд должен быть проверен на единичные корни и с учетом сезонных колебаний, а также других предварительных преобразований и проверок данных и т. Д.

Поскольку необходимо регулярно проверять большое количество серий, каково решение, чтобы сделать это эффективно? Задача состоит в том, чтобы сэкономить время в рутинных аспектах и ​​отслеживать серию и результаты анализа. Например, единичное корневое тестирование серии - это нечто субъективное. Какую часть этого типа анализа можно автоматизировать и как?

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

Я спрашиваю что-то более конкретное и основанное на опыте работы с набором данных из нескольких временных рядов. Больше внимания уделяется минимизации ошибок при работе с таким количеством серий, а также автоматизации повторяющихся задач.

1 Ответ

4 голосов
/ 20 октября 2011

Я предполагаю, что ряды будут рассмотрены независимо, так как вы не упомянули какие-либо взаимосвязи в моделях. Я не уверен, какой тип объекта вы хотите использовать или какие тесты, но основная цель «лучших практик» не зависит от фактического пакета, который будет использоваться.

Самые простые подходы включают загрузку объектов в список и анализ каждой серии с помощью простых итераторов, таких как lapply, или с помощью многоядерных методов, таких как mclapply или foreach, в R. Для Matlab вы можете работать с массивами ячеек. , В наборе инструментов для параллельных вычислений есть функция под названием parfor для «параллельного ввода», которая аналогична функции foreach в R. За мои деньги я бы рекомендовал использовать R, поскольку он дешевле (бесплатно) и имеет гораздо более богатый функционал для статистического анализа. Matlab имеет лучшую документацию и вспомогательные инструменты, но они, как правило, со временем теряют значение, когда вы становитесь более знакомыми с инструментами и методами вашего исследования (и с увеличением количества ваших ссылок).

Хорошо привыкнуть к использованию многоядерных инструментов в целом, так как это может существенно сократить время, необходимое для анализа множества независимых небольших объектов.

...