I have a time series dataset where events have harmonic properties, and seemingly the nature of the event's early segments can determine the remainder of the event (see example 1's oscillations). Additionally, these early segments might determine the properties/likelihood of some following/associated event (example 2).

Which time series prediction techniques may be suitable for making predictions based on this kind of behaviour? Specifically:

  1. For determining how an event, from appearance, might oscillate and dissipate (forecast/extrapolation).
  2. For predicting what event may follow (probabilistic model).

I am not very knowledgeable in this, but seemingly dynamic ARIMA may be appropriate for the extrapolation at a given point. Also, the early segment might be suitable as a feature for prediction in some other model (e.g. SVC)?

Example Event 1


Example Event 2


EDIT: I want to avoid fitting a highly specialised/targeted model based on observation - but would be happy for some process to learn this representation. I am interested in learning about existing models/methodologies that could be applied to this problem, references would be great.

  • $\begingroup$ Perhaps looking at this in the frequency domain would be useful. This looks like it might be approximately a sine wave times an exponential decay (maybe); if so, that would give you a model for the signal that you could then use for prediction. $\endgroup$ – D.W. Apr 30 '19 at 22:18
  • $\begingroup$ @D.W. Thanks! That definitely seems possible and I think I should clarify the original question - I would like to avoid creating a highly tailored model for this specific signal response, and rather would deploy some known methodology/model for fitting (e.g. some special regression model). Are you familiar with anything like this? References would be appreciated. $\endgroup$ – Kappers May 1 '19 at 8:57

I would suggest to make the correlation plot and observe the dependencies. Yes, ARIMA, is so far the best forecasting model for time series and it should work in this data set too. For the implementation, in R, there is auto ARIMA, which automatically takes the best suited valued for the parameters( p: The number of lag observations included in the model, also called the lag order. d: The number of times that the raw observations are differenced, also called the degree of differencing. q: The size of the moving average window, also called the order of moving average.)

But as far as I am concerned, in Python, you have to manually tune the parameters by yourself by analyzing the correlation plot. This is a very well explained beginner level tutorial for the implementation in Python.
Let me know in the comments if it works (or not).

  • $\begingroup$ Please could you point me towards the relevant R packages? I'm assuming they may provide relevant references to a process which fits these ARIMA parameters. $\endgroup$ – Kappers May 1 '19 at 9:02
  • $\begingroup$ the package is "auto.arima" . find the documentation of the same here: rdocumentation.org/packages/forecast/versions/8.6/topics/… $\endgroup$ – SiluPanda May 1 '19 at 9:39
  • $\begingroup$ Thanks! Maybe, I'll be able to export the learnt parameters for use in whatever other environment is necessary. $\endgroup$ – Kappers May 1 '19 at 20:40

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.