Pandas: Extend rows of data frame by moving average

Viewed 37

I have a data frame which I want to extend based on moving Average. So for example:

Week Number    |     Cumulative Sum
1                     24
2                     52
3                     74

Now what I want to do is to extend the data for next 3 weeks like this:

Week Number    |     Cumulative Sum
1                     24
2                     52
3                     74
4                     (24+52+74)/3 = 100.667
5                     (100.667+52+74)/3 = 75.556
6                     (75.556+100.667+74)/3 = 83.407

Can someone help me understanding how I can extend this?

1 Answers

I think this code can help.

import pandas as pd                                                                                           

s = pd.Series([24,52,75],index=[1,2,3])                                                                                

df=pd.DataFrame(s,columns=["Week"]) 

df[[f for f in list(df) if "Week" in f]].mean(axis=1)

or

for i in range(1,8):
    
    if i > 3:
        df.loc[i] = df[:i].mean(axis =0)
Related