🎉Community Raffle - Win $25

An exclusive raffle opportunity for active members like you! Complete your profile, answer questions and get your first accepted badge to enter the raffle.
Join and Win

How to determine seasonality of a time series

User: "Tripartio"
New Altair Community Member
Updated by Jocelyn
Hello,
Does RapidMiner have any operator that can determine the seasonality of a time series? My idea is that the input is a dataset with an attribute specified as the target, and the output (perhaps among other things) figures out the seasonality pattern (e.g. 12 for annual seasonality on monthly data, 7 for weekly seasonality on daily data, 168 for weekly seasonality on hourly data, etc.).
I know that R can do this with auto.arima, but does RapidMiner have such a feature built in? (If not, I know that I could use the R Scripting extension to run the R function.)
Regards,
Chitu

Find more posts tagged with

Sort by:
1 - 9 of 91
    Hi,

    @yyhuang may correct me here, but to the best of my knowledge auto-arima is just a grid optimization around normal arima optimized on BIC/AIC. You can easily build this with operators.

    Best,
    Martin
    User: "Tripartio"
    New Altair Community Member
    OP
    Updated by Tripartio
    Here is a brief description to how R's auto.arima works, summarized by one of its creators: 8.7 ARIMA modelling in R. I'm not quite expert enough in RapidMiner to "easily build this with operators".
    In any case, do I take it, then, that RapidMiner does not have an operator that outputs the seasonality, especially in ARIMA terms? As I said, I could work around it with the R Scripting extension, but with the recent Forecasting extension, I was wondering if auto.arima functionality was integrated (or on the roadmap).
    By the way, I've been playing around recently with the new Forecasting extension, and it is very impressive. Even though it is still quite rudimentary, it produces great results easily. Thanks for your work on that.
    Regards,
    Chitu


    Hi,
    thats a great link :). As far as I know there is no out-of-the box method for this, but I am not our internal ARIMA expert. Those are @David_A and @yyhuang . So i leave the stage for them.

    Best,
    Martin
    User: "YYH"
    Altair Employee
    Accepted Answer
    tftemme put a good example process for Auto ARIMA using grid optimization in the end of the documentation
    https://docs.rapidminer.com/9.3/studio/operators/modeling/time_series/forecasting/arima_trainer.html

    It does fine-tuning of (p,d,q) to minimize AIC as described in Hyndman-Khandakar algorithm for automatic ARIMA modelling
    We currently do not have seasonal ARIMA (p,d,q) x (P,D,Q), so you will need python/R integration to get auto Seasonal ARIMA.
    User: "Tripartio"
    New Altair Community Member
    OP
    @yyhuang Thanks for the pointer to the Auto ARIMA process. That's the kind of thing I'm looking for. It is disappointing that it does not support seasonality, but I hope that might come soon.

    @mschmitz, it seems that the new Forecasting extension operators Forecast (Univariate) and Forecast (Multivariate) do this kind of thing. But the main difference between what they currently do (version 0.1.6) and what I am looking for is that they do not report the ARIMA p, d, q parameters, or the parameters for other models (Holt-Winters or Functional and Seasonal Forecasting). Could they be updated to report the optimized parameters?
    Regards,
    Chitu
    we could do it. But I would like to have Univariate Forcast as simple as possible. Why don't you just use the process as an execute process and edit it in the way you need it?

    Best,
    Martin
    User: "Tripartio"
    New Altair Community Member
    OP
    Sorry, but I don't understand your suggestion at all: "Why don't you just use the process as an execute process and edit it in the way you need it?" Could you please explain what you are suggesting?
    Regards,
    Chitu

    you can just open the underlying process and store the process. Afterwards you can drag and drop this said process and use it as a function-type thing. This allows you to edit this process to do the things you want to do.

    I just got the idea of adding the best p-q-d used as an annotation to the resulting example set. that way we would keep it simple and you can see whats being used. How does this sound?

    Best,
    Martin
    User: "Tripartio"
    New Altair Community Member
    OP
    @mschmitz, Sorry for the very late response. Your idea sounds quite helpful ("I just got the idea of adding the best p-q-d used as an annotation to the resulting example set"). Would that be possible for an update to the operators?

    Thanks,
    Chitu