Filter löschen
Filter löschen

How do i implement moving average for prediction?

4 Ansichten (letzte 30 Tage)
Ali
Ali am 24 Feb. 2019
Beantwortet: Krishna Zanwar am 27 Feb. 2019
I implemented moving average in excel (data file attached).Also shown in attached image.
Now i want to apply my data in MATLAB for result analysis.
i tried "movmean" and "filter" function but results are different from excel file.I tried like this:
clc
clear all
data3=xlsread ('2.xlsx','C:C');
% check with movmean function
M = movmean(data3,2)
subplot (2,1,1)
plot (data3)
hold on
plot(M)
% check with filter function
N = 2;
MA = filter(ones(N,1),N,data3);
subplot (2,1,2)
plot (MA)
  1. I want to take moving average with interval 2.
  2. Predict the future values (for instance:if there are 180 rows i want to calculate step ahead prediction of row 181,182 using avergae of previous two values)
Moving average_Forecasting.jpg

Akzeptierte Antwort

Krishna Zanwar
Krishna Zanwar am 27 Feb. 2019
Hey Ali,
It seems like in the Excel sheet the moving mean of ‘Actual’ is printed in ‘Forecast’.
In Matlab ‘Forecast’ is used as an input and so the output ‘M’ is not matching, in the same code if you take ‘Actual’ as input it will give you the same output as Excel.
data3=xlsread ('2.xlsx','B:B');
To get 181 and 182 outputs by averaging the previous two outputs you can do this-
M(end+1)=(M(end)+M(end-1))/2;
M(end+1)=(M(end)+M(end-1))/2;

Weitere Antworten (0)

Kategorien

Mehr zu AI for Signals finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by