Recipe: How to calculate MOVING AVG in a Pandas DataFrame?
DATA MUNGING PYTHON PANDAS DATAFRAME PANDAS CHEATSHEET PANDAS DATAFRAME TUTORIAL

How to calculate MOVING AVG in a Pandas DataFrame?

This recipe helps you calculate MOVING AVG in a Pandas DataFrame
In [3]:
## How to calculate MOVING AVG in a Pandas DataFrame
def Kickstarter_Example_95():
    print()
    print(format('How to calculate MOVING AVG in a Pandas DataFrame','*^82'))
    import warnings
    warnings.filterwarnings("ignore")
    # load libraries
    import pandas as pd
    raw_data = {'regiment': ['Nighthawks', 'Nighthawks', 'Nighthawks', 'Nighthawks',
                             'Dragoons', 'Dragoons', 'Dragoons', 'Dragoons', 'Scouts',
                             'Scouts', 'Scouts', 'Scouts'],
                'company': ['1st', '1st', '2nd', '2nd', '1st', '1st', '2nd',
                            '2nd','1st', '1st', '2nd', '2nd'],
                'name': ['Miller', 'Jacobson', 'Bali', 'Milner', 'Cooze', 'Jacon',
                         'Ryaner', 'Sone', 'Sloan', 'Piger', 'Riani', 'Ali'],
                'preTestScore': [4, 24, 31, 2, 3, 4, 24, 31, 2, 3, 2, 3],
                'postTestScore': [25, 94, 57, 62, 70, 25, 94, 57, 62, 70, 62, 70]}
    df = pd.DataFrame(raw_data, columns = ['regiment', 'company', 'name',
                                           'preTestScore', 'postTestScore'])
    print(); print(df)

    # Calculate Rolling Moving Average with Window of 2
    df1 = df[['preTestScore','postTestScore']].rolling(window=2).mean()
    print(); print(df1)

    df2 = df1.fillna(0)
    print(); print(df2)

Kickstarter_Example_95()
****************How to calculate MOVING AVG in a Pandas DataFrame*****************

      regiment company      name  preTestScore  postTestScore
0   Nighthawks     1st    Miller             4             25
1   Nighthawks     1st  Jacobson            24             94
2   Nighthawks     2nd      Bali            31             57
3   Nighthawks     2nd    Milner             2             62
4     Dragoons     1st     Cooze             3             70
5     Dragoons     1st     Jacon             4             25
6     Dragoons     2nd    Ryaner            24             94
7     Dragoons     2nd      Sone            31             57
8       Scouts     1st     Sloan             2             62
9       Scouts     1st     Piger             3             70
10      Scouts     2nd     Riani             2             62
11      Scouts     2nd       Ali             3             70

    preTestScore  postTestScore
0            NaN            NaN
1           14.0           59.5
2           27.5           75.5
3           16.5           59.5
4            2.5           66.0
5            3.5           47.5
6           14.0           59.5
7           27.5           75.5
8           16.5           59.5
9            2.5           66.0
10           2.5           66.0
11           2.5           66.0

    preTestScore  postTestScore
0            0.0            0.0
1           14.0           59.5
2           27.5           75.5
3           16.5           59.5
4            2.5           66.0
5            3.5           47.5
6           14.0           59.5
7           27.5           75.5
8           16.5           59.5
9            2.5           66.0
10           2.5           66.0
11           2.5           66.0


Stuck at work?
Can't find the recipe you are looking for. Let us know and we will find an expert to create the recipe for you. Click here
Companies using this Recipe
2 developers from Ericsson
1 developer from Cognizant
1 developer from ICU Medical
1 developer from LTI
1 developer from Renovite Technologies
1 developer from Vodafone
1 developer from Altimetrik
1 developer from Infosys
1 developer from MoneyLion
1 developer from S&P