Say I've got a signal that I know is composed of periodic components. However, I'm worried that there are "spiky" events that are embedded in this signal, and potentially occurring periodically. I can't just look at the power spectrum of the signal, because the spiky event will show up across many frequencies in the power spectrum.

What kinds of methods are out there to tease apart components of a signal that can reasonably be decomposed into sine waves, from those that cannot (like a spike)?

  • $\begingroup$ Can you put some example data up? $\endgroup$ Commented Jun 3, 2014 at 23:26
  • $\begingroup$ This is definitely in the purview of time series analysis (which is used, for instance, to tease apart seasonal weather patterns from other, non-seasonal trends). But I'm no expert in the field; I just know that exists. $\endgroup$
    – Atticus29
    Commented Jun 4, 2014 at 16:03

1 Answer 1


You can use linear prediction: look at the residual of an AR model. If the signal is a sum of sinusoidal components - and provided the order of the model is appropriately chosen - the prediction error will be small. Unexpected spikes will directly show up in the error signal.

  • $\begingroup$ Would this only work if the signal had constant statistics? If the signal was comprised of speech or something (where the frequency makeup of the signal changed over time), then an AR model would be quite inaccurate in general, no? $\endgroup$
    – choldgraf
    Commented Jun 4, 2014 at 0:12
  • $\begingroup$ in this case it would still be possible to process the signal in overlapping frames (over which the signal statistics can be assumed to be constant). $\endgroup$ Commented Jun 4, 2014 at 1:46
  • $\begingroup$ if the periodic component of the signal can be approximated by a handful of exponentially decaying sinusoids, another approach could be subspace tracking - track the signal subspace, project onto the noise subspace. perso.telecom-paristech.fr/~grichard/Publications/… $\endgroup$ Commented Jun 4, 2014 at 1:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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