# How to identify a non-periodic time-series?

I am working on a problem where I have to first classify whether a time-series is periodic or not and then, if it is periodic identify its period(s) (the time-series could have multiple periodicities, also).

I need a reliable approach to say that a time-series is not periodic. I have been searching about this topic and these are some leads:

Are there some other properties of time-series that can be used?

• I would love some of the promising citations you have seen for your two bullet points. :) Also: Welcome to CV, Hari. – Alexis Mar 12 at 7:46

I would approach the problem "check if a time-series is not periodic" as follows

Maybe this is a bit naive approach but for, at least a simple case, it seems to work (see example below).

## Example

As minimal test for this 2-stages approach we could see how it works if we have the following 2 series:

• Periodic series: $$y_{i}^{(1)} = \sin(x_{i}) + \epsilon_{i}$$
• Non periodic series: $$y_{i}^{(2)} = \alpha + \beta x_{i} + \epsilon_{i}$$

where $$x_{i} = [-2\pi, 2\pi]$$ and $$\epsilon_{i} \sim N(0, \sigma^{2})$$ and $$i = 1,...,N$$.

Below you will find a R code for these settings. The harmonic test is performed for the two series using the PML package.

library(PML)
N  = 100
x  = seq(-2*pi, 2*pi, len = N)
ep = rnorm(N) * 0.25
y1 = sin(x) + ep
y2 =  x + 0.5 + ep

re1 = test.harmonic(y1, p = 0.025/(N - 1)) # p: correct for multiple freq
re1$sig frequency prop (g) p-value p-threshold 1 50.000000 0.3565748 3.148508e-08 0.0002525253 2 2.857143 0.0316902 1.000000e+00 0.0002525253 re2 = test.harmonic(y2, p = 0.025/(N-1)) re2$sig

frequency  prop (g)      p-value  p-threshold
1 100     0.2077127   0.0006863734 0.0002525253


From the results above we notice that for $$y^{(1)}$$ we have one significant frequency while for the linear function we do not find any.

I hope this answer helps (maybe it does not solve your problem but suggests a possible line of investigation).