I’ve got what it looks like a periodic signal but the periods seem not equally repeated, I want to estimate the PSD, particularly I need to obtain the dominant frequency of this data. I’ve estimated the autocorrelation and then applied FFT, the results as shown in the figures below.
It seems that FFT algorithm is not the best option for this kind of data. Could anyone please suggest another solution?.

  1. Time series


  1. autocorrelation


  1. PSD


  • $\begingroup$ In your comment to @Omer, I noticed you alluded to nonstationarity. In that case I recommend tracking the signal with a multimodal Kalman filter, which uses a mixture model. $\endgroup$
    – Emre
    Commented Nov 9, 2014 at 21:33
  • $\begingroup$ Can you share the data? $\endgroup$ Commented Apr 9, 2015 at 4:24

1 Answer 1


The dominant frequency always have the highest power and by looking at the PSD plot you can easily compute it. The dominant frequency in your case is where the PSD has the highest peak. In this case it is somewhere at around f = 2.7.

  • $\begingroup$ Thanks for your comment. As you can see there is more than one dominant spike. Therefore from my experience one of the other spikes can be the dominant frequency as well. When I applied this method to the whole set of my data, I’ve noticed fluctuations in the frequency which should not be the case for my process. This gave me indication that any of the high energy peaks can be the dominant frequency!. $\endgroup$
    – Rajab
    Commented Oct 10, 2014 at 17:18
  • $\begingroup$ In other different cases, you can barely decided which one is the dominate frequency, where you can see two or three peaks almost at the same high. $\endgroup$
    – Rajab
    Commented Oct 10, 2014 at 17:23
  • $\begingroup$ You can try using ACF method, but I am not sure which type of data you are dealing with, are we talking about voice data? and acoustic measurement data? $\endgroup$
    – Omer
    Commented Apr 10, 2015 at 19:37

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.