Search code examples
pythontime-seriesmoving-averagepycaret

Creating 12 month MA in PyCaret time series gives a column with NA values


I am trying to use PyCaret for time series, according to this tutorial. My analysis did not work. When I created a new column

data['MA12'] = data['variable'].rolling(12).mean()

I got this new MA12 column with NA values only.

As a resulted I decided to replicate the code from the tutorial, using AirPassangers dataset, but got the same issue.

When I print data, I get

Month   Passengers  MA12
0   1949-01-01  112 NaN
1   1949-02-01  118 NaN
2   1949-03-01  132 NaN
3   1949-04-01  129 NaN
4   1949-05-01  121 NaN

I would greatly appreciate any tips on what is going on here.

My only guess, I use a default version of PyCaret, maybe I need to install a full one. Tried this too - the same result.


Solution

  • Since you want the previous 12 reads, the first 11 will be NaN. You need more rows than 12 before you get a moving average of 12. You can see this on the link you provided. The chart of MA doesn't start up right away.