I have got various time series data for different observations. I want to represent one time series observation by one aggregated variable. The easiest one is to take the mean of the time series, but mean does not capture the variations in the observation over time. I thought of computing the distance (dist) between an arbitrary reference and the time series data.

I am curious to know if there is other technique that I could apply to fairly represent the time series observation by one aggregation variable? Is there any R package that I can use?


  • $\begingroup$ What you ask is very much application dependent. Can you tell us more on what you are trying to achieve? For example, if your time series represents a stock the best approach would probably be very different than if you want to characterize an EEG signal. $\endgroup$ – Leeor May 15 '14 at 12:25
  • $\begingroup$ The time series are traffic data (i.e., speed, count, spacing.... of vehicles on freeways over time on each day). The goal is to summarize/aggregate each time series by one variable and then apply multi-dimensional scaling to cluster days of similar traffic characteristics. $\endgroup$ – Filly May 15 '14 at 13:48
  • $\begingroup$ Well in that case why do you require only one aggregation variable? Clustering can be done a number of variables... $\endgroup$ – Leeor May 15 '14 at 13:56

One of the goals of control charts is to aggregate information from a complex process into one or more univariate summary statistics. Depending on the process type (stationary, non-stationary etc) and the dimensionality of the process, different control charts can be used. This might suit you well - especially since you considered distances already.

Two simple control chart approaches to consider are the MEWMA and MCUSUM control charts. These methods are implmented in the MSQC package in R. Analytical procedures for these are implemented in the spc package in R. Montgomery's Introduction to Statistical Process Control provides implementation details, in clear, non-esoteric wording in case you would like to know more.

Both charts will work well if you don't have too many variables (since they require the inversion of a covariance matrix, which can become problematic if variables are highly correlated), and can handle some level of non-stationarity.

To use these methods, you must first train a model on data without faults (this may be no problem for you - perhaps you have none). This means you should select a value of the forgetting factor (MEWMA) or the reference value parameters (MCUSUM) based on a test set if possible. This can be done by cross-validation, or eye-balling it if you are in a rush and this is mostly for data exploratory purposes.

Once you have the parameters of the control charts, you can apply them "in the wild". This will return to you a univariate control chart statistic summarizing the information from your time series, as well as control limits indicating when your process is behaving atypically.


Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.