Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ค้นหา Rolling Mean – Python Pandas


ในการหาค่าเฉลี่ยการหมุน เราจะใช้ฟังก์ชัน apply() ใน Pandas ขั้นแรก ให้เรานำเข้าไลบรารีที่จำเป็น -

import pandas as pd

สร้าง DataFrame ที่มี 2 คอลัมน์ หนึ่งคือคอลัมน์ int -

dataFrame = pd.DataFrame(
   {
      "Car": ['Tesla', 'Mercedes', 'Tesla', 'Mustang', 'Mercedes', 'Mustang'],
      "Reg_Price": [5000, 1500, 6500, 8000, 9000, 6000]

   }
)

จัดกลุ่มโดยใช้ GroupBy และค้นหา Rolling Mean โดยใช้ apply() -

dataFrame.groupby("Car")["Reg_Price"].apply(
lambda x: x.rolling(center=False, window=2).mean())

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

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())

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

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