Start your journey with Alteryx Machine Learning - Take our Interactive Lesson today!

Alteryx Machine Learning Discussions

Find answers, ask questions, and share expertise about Alteryx Machine Learning.
Getting Started

Start your learning journey with Alteryx Machine Learning Interactive Lessons

Go to Lessons

Selecting Time series Forecast or Machine Learning Model

Hamza_Abuali
5 - Atom

I have datasets that contains the :
date in this format (yyyy-MM-dd)
Product (3 distinct product)
CountOfShipment (the target)

I want to make either a predictive model or a time series forecast in Alteryx that could predict the CountOfShipment for the next year.

let's just say that the dataset ends in 2023-12-31
and I want to predict the CountOfShipment for 2024 like this:
2024 Jan for product1 = (the predicted CountOfShipment)
2024 Jan for product2 = (the predicted CountOfShipment)
2024 Jan for product3 = (the predicted CountOfShipment)
2024 Feb for product1 = (the predicted CountOfShipment)
2024 Feb for product2 = (the predicted CountOfShipment)
2024 Feb for product3 = (the predicted CountOfShipment)
and so on till 2024 Dec
how to achieve this in Alteryx?

2 REPLIES 2
LindonB
8 - Asteroid

Hi Hamza_Abuali,

I see this post is a couple weeks old, but I'm happy to share some thoughts and a workflow.

First, let me say that selecting a forecasting model often requires some domain knowledge about the task and the data. For example, the frequency, volume, volatility or seasonality of available data often helps guide model selection. While Alteryx has a lot of tools, knowing which to select, how to configure them, and their respective pros and cons is key. You also want to make sure there aren't any gaps, discontinuities, or outliers that would be overly influential in your data and address them first. 

 

Given that your data appears to be monthly and doesn't contain features/explanatory variables other than past shipment counts to predict future shipments, a time series forecast (such as an ARIMA model or an exponential smoothing model) would probably be best. Regression models and various ML models are more effective at disseminating complex relationships and handling bigger data with more features/variables.

 

Both ARIMA and ETS can handle seasonality; ARIMA also addresses autocorrelation. Here, I'd recommend a Holt-Winters model, or an ETS model in Alteryx. (Note that you really need at least two complete years of data to forecast monthly data with seasonality.) 

The other complexity in your request is grouping by the Product field. Alteryx doesn't support this currently (as far as I know) without filtering for each product one by one. I've attached a workflow that does three things:


1. Compares ETS and ARIMA models for productA only. (Included this just so that you can see how to test and compare two forecast models using the Alteryx tools.)
2. Filters for each productA, productB and productC separately and builds an ETS model for each using Alteryx tools.

3. Uses a R tool (which you can use if you have predictive tools installed) to run an ETS model for each Product and then stitch your results back in a dataframe. You'll want to adjust it for any configuring you want to do to the model, and you'll lose a lot of the visuals and error checking without supplementing the script though. 

 

Hope this helps!

Hamza_Abuali
5 - Atom

Hello LindonB

Thank you for replying and trying to help.

I used the approach of building one distinct model for each product, and it worked well.

Thanks again.