New Series of Time Series: Power BI Custom Visual (Part 7)

Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

acf-constant

In the last three parts, I have explained about the time series R custom Visual we have in Power BI. as you remember we have 3 main time series chart in Power BI store (see below): Decompose of time series (trend, seasonality and irregular components).

the two other custom visual help us to do forecasting by having Date and Value. However there are some differences between these charts, In last post, I have explained the “Exponential Smoothing”. In this and in the next post I am going to show how Arima working, and how to set up the parameters.

tsexponential

First, you need to download the chart from Power BI Store:

the first step is to download the Arima time series custom visual from Power BI store as below

tsaeima1

then just select the forecast with Arima visual.

 

 

tsarima2

finally, you would have it in power BI as below

tsarima3

now I just choose two columns from my data field to see how “Arima” forecasting, able to forecast my data (see below picture)

tsarima4

the result is so similar with what I have in “Exponential Smoothing” forecasting chart, but the values for forecasting are not the same. Also, as you can see in the above picture, in number 2, we have some parameters that we donot have them in the Exponential smoothing. as a result, we have to set up some parameters that are not the same.

firts question come to mind is that, what is difference between “Exponential Smoothing and Arima”

Exponential Smoothing and ARIMA difference

the main basis of Exponential Smoothing was to find a relationship between current value and successive values of trend, and seasonality of data, it does not any assumption for irregular components.

While exponential smoothing models are based on a description of trend and seasonality in the data, ARIMA models aim to describe the auto correlations in the data. So what is Auto correlation in data?[3]

Auto Correlation

each forecasting may have some errors that means the difference between what happen inreal life andwhat forecast

Erorr= Real Life Data-Forecast Data

in last post about Exponential smoothing we did a forecast as below

As you can see in the above code we store the result of prediction in a variable name “TempTrendforecasts “.

this varibale has a component (column) name residual as below

so I am going to check how the errors is bad, to see how the errors (residual) is, I am going to check whether there is a correlation between forecast errors (residual) for successive predictions. if there is no correlation then this forecast is the best answer we have, otherwise, I have to use ARIMA! which I will explained later

in R we have a function name “acf()”

this chart help me to find out is there any correlation between errors for some periods (lags)

so the function is acf, it gets the erros lists (TempTrendforecasts$residuals), there should be no NA value in the list, so apply “na.omit” function on it to remove the NA values,

the second input that this function will get is the period that we want to check wether there is correlation between errors or not.

so we have below picture

in power BI we have below picture: as you see there is no that much correlation between errors for last 10 periods. (correlation is less than 0.2 that is very low correlation)

acf-correlation

Another way to be sure that the predictive model cannot be improved , it is to check whether the forecast errors are normally distributed with mean zero and constant variance. To check whether the forecast errors have
constant variance, we can make a time plot of the in-sample forecast errors: as you see in the below picture the chart fluctuate around the Zero values. so there is no correlation between successive errors values.

acf-constant

However, alwyas is not like that! we have to check some other autocorrelation and testmore , there is a possibilities to have some correlation.

for next post I will explained how ARIMA will works with autocorrelation and how we set the parameters.

 

[1]Book:http://a-little-book-of-r-for-time-series.readthedocs.io/en/latest/src/timeseries.html

[2]https://www.google.co.nz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=14&ved=0ahUKEwjIl7bUgPvVAhWLVLwKHbr2CNA4ChAWCDYwAw&url=https%3A%2F%2Fwww.ons.gov.uk%2Fons%2Fguide-method%2Fukcemga%2Fpublications-home%2Fpublications%2Farchive%2Ffrom-holt-winters-to-arima-modelling–measuring-the-impact-on-forecasting-errors-for-components-of-quarterly-estimates-of-public-service-output.pdf&usg=AFQjCNFkiCxd9yfOmyIN-MpqkRgmt_tJrA

[3]https://github.com/Microsoft/powerbi-visuals-forcastingarima

Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail
rssyoutuberssyoutube
Leila Etaati
Dr. Leila Etaati is Principal Data Scientist, BI Consultant, and Speaker. She has over 10 years’ experience working with databases and software systems. She was involved in many large-scale projects for big sized companies. Leila has PhD of Information System department, University of Auckland, MS and BS in computer science. Leila is Microsoft Data Platform MVP.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">