What techniques can i use for automatic periodicity detection specifically in noisy "multi-variate" time series data?

By multi-variate time series, i mean that i have multiple (>1000) variables measured at each time point and i am looking for a way to find the period in this data. The data may have an underlying trend (unknown) and is often corrupted by noise.

I've found several possible ways of doing this in univariate time series data and one way is as follows:

  • First, decompose the given timeseries into trend, seasonal and error parts. One way to achieve this is a technique called STL - A seasonal trend decomposition [1], [2].

  • Next, take the seasonal part and look for peaks in the periodogram and autocorrelation plots [1], [2]

I am also interested in ways to:

  • Detect whether or not a time-series is periodic (ex: may be a statistical test)

  • Measure/Quantify its periodicity level/degree between say [0,1] since its very likely that the time-series is distorted/corrupted by noise.

  • If it is periodic, i would like to find its period

  • $\begingroup$ @javalcalle thanks for answering. I dont want to find the period in the time series of each measured variable "independently". Rather i want to treat all the measured variables as a single unit/set. And then look for repetetive/periodic patterns in that data. $\endgroup$ – cdeepakroy Feb 9 '15 at 20:31
  • $\begingroup$ I deleted my previous comment because the link was wrong. I wanted to mention this post, but it seems that you are looking for a method to find a common period for all series, so I don't think it is what you are looking for. $\endgroup$ – javlacalle Feb 9 '15 at 22:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.