How to decompose a time series without cycles

Hi all,

I would like to decompose a time series that does not have cycles. I use the use the decompose() method from stats package like it is used here: https://fukamilab.github.io/BIO202/09-A-time-series.html. In another thread (Decomposition of time series yields error) I was told to prespecify a frequency for the decompositon. But if the time series does not have cycles I am wondering why I should do that. For me it does not make sense and I would like to decompose a time series without prespecifying a frequency.

Does anyone else have an opinion on the approach of predefining a frequency before the decomposition (altough there are no real cycles) and then let a decomposition function extract cycles based on this pre-specified frequency. As mentioned above, I personally think that this is pointless. So basically my question is whether there are methods that do not need a predefined frequency (if the time series has no cycles) to decompose the time series into a trend and a white noise?

I'd appreciate any comments and would be thankful for your help.

I'm not a statistician but this sounds to me like a linear regression (or some other smoothing technic) instead of a time series decomposition.

Thanks andresrcs for your comment,

basically it is not a linear regression. Time series decomposition is field for itself. So the goal is to decompose a time series into a trend, a cycle and random white noise. My question is, what can I do, if the time series does not have a cycle. For me it does not make sense, as done in the thread Decomposition of time series yields error, to prespecify a frequeny (as thus a cycle) and later use a decomposition method to derive this predefined cycle. I would like to know how to decompose time series without any cycles and thus without the need to prespecify a frequency. Do you know how I can do that?

https://rpubs.com/JSHAH/481706#:~:text=The%20autoregressive%20(AR)%20model%20is,regressed%20on%20the%20previous%20observation.&text=This%20equation%20is%20known%20as%20AR(1)%20formulation.

I think you are confusing the frecuency of your time series data with any seasonality present on it, our construct of time is inherently cyclical even if it is only an artifact, but that doesn't mean that a seasonality has to be present in your data.
Maybe you are looking for a decomposition based on predictability

Thanks for your answers andresrcs and nirgrahamuk,

basically I am talking about decomposition of a time series as it is mentioned here for example https://otexts.com/fpp2/components.html or https://machinelearningmastery.com/decompose-time-series-data-trend-seasonality/ (you can find many of those on the internet). All of them say that the time series is decomposed into a trend and into cyclse (seasonality). What if the time series does not have seasonal patterns (no cycle)? The standard decompose() method from stats package in R can't really handle that because in the previous thread I was told to prespecify a frequency (otherwise it yielded an error). To I would like to decompose a time series into a trend and into random noise (but no seasonal pattern). Is this possible with R?

I dont think I can provide you more help than directing you to the material as I did. Good luck with your work.

In my opinion, that would require a different decomposition method than the one you are mentioning in your references, to exemplify, what you are requesting is like if you wanted the + operator to perform a multiplication, it is not meant to do that, for that you have another operator (i.e *).

I think we have reached an impasse since you are committed to making the times series decomposition method behave the way you like and I don't think it is possible, so I'm going to step aside from this thread. Good luck!

First, reread Chapter 2 of the Forecasting: Principles and Practice book that you referenced, specifically section 2.3. It should clarify the difference between cycles and seasonality.

Second, you are struggling to find a way to use the wrong tool. Classical decomposition was designed to decompose a time series into trend/cycle, seasonal and random components, and it is very useful for that specific task. Your data is not seasonal so this model is not appropriate. Very simple.

Third, for ideas on methods that smooth out the random effects and leave the trend/cycle, see Chapter 28 of Irizarry's Introduction to Data Science at https://rafalab.github.io/dsbook/smoothing.html.

Good luck!

Thanks for all comments

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.