Để tìm giá trị trung bình, chúng ta sẽ sử dụng hàm apply () trong Pandas. Đầu tiên, hãy để chúng tôi nhập thư viện được yêu cầu -
import pandas as pd
Tạo một DataFrame có 2 cột. Một là cột int -
dataFrame = pd.DataFrame( { "Car": ['Tesla', 'Mercedes', 'Tesla', 'Mustang', 'Mercedes', 'Mustang'], "Reg_Price": [5000, 1500, 6500, 8000, 9000, 6000] } )
Nhóm bằng cách sử dụng GroupBy và tìm Rolling Mean bằng cách sử dụng apply () -
dataFrame.groupby("Car")["Reg_Price"].apply( lambda x: x.rolling(center=False, window=2).mean())
Ví dụ
Sau đây là mã -
import pandas as pd # Create DataFrame dataFrame = pd.DataFrame( { "Car": ['Tesla', 'Mercedes', 'Tesla', 'Mustang', 'Mercedes', 'Mustang'], "Reg_Price": [5000, 1500, 6500, 8000, 9000, 6000] } ) print"DataFrame ...\n",dataFrame print"\nRolling Mean...\n",dataFrame.groupby("Car")["Reg_Price"].apply( lambda x: x.rolling(center=False, window=2).mean())
Đầu ra
Điều này sẽ tạo ra kết quả sau -
DataFrame ... Car Reg_Price 0 Tesla 5000 1 Mercedes 1500 2 Tesla 6500 3 Mustang 8000 4 Mercedes 9000 5 Mustang 6000 Rolling Mean... 0 NaN 1 NaN 2 5750.0 3 NaN 4 5250.0 5 7000.0 Name: Reg_Price, dtype: float64