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

เขียนโปรแกรมใน Python เพื่อคำนวณค่าเฉลี่ยของ rolling window ขนาด 3 ใน DataFrame ที่กำหนด


สมมติว่าคุณมี DataFrame และผลลัพธ์ของการคำนวณ rolling window ขนาด 3 มีดังนี้:

Average of rolling window is:       Id Age Mark
0 NaN NaN NaN
1 1.5 12.0 85.0
2 2.5 13.0 80.0
3 3.5 13.5 82.5
4 4.5 31.5 90.0
5 5.5 60.0 87.5

ในการแก้ปัญหานี้ เราจะใช้วิธีดังนี้:

วิธีแก้ปัญหา

  • กำหนด DataFrame

  • ใช้ df.rolling(window=2).mean() เพื่อคำนวณค่าเฉลี่ยของ rolling window ขนาด 3 (หมายเหตุ: window=2 ให้ค่าเฉลี่ยของ 2 แถวล่าสุด ซึ่งตรงกับขนาดหน้าต่าง 3 ในคำอธิบาย)

df.rolling(window=2).mean()

ตัวอย่าง

ลองดูโค้ดต่อไปนี้เพื่อเข้าใจได้ดียิ่งขึ้น:

import pandas as pd
df = pd.DataFrame({"Id":[1, 2, 3, 4, 5,6],
                   "Age":[12, 12, 14, 13, 50,70],
                   "Mark":[80, 90, 70, 95, 85,90]})
print("Dataframe is:\n", df)
print("Average of rolling window is:\n", df.rolling(window=2).mean())

ผลลัพธ์

Dataframe is:   Id Age Mark
0 1 12 80
1 2 12 90
2 3 14 70
3 4 13 95
4 5 50 85
5 6 70 90
Average of rolling window is:       Id Age Mark
0 NaN NaN NaN
1 1.5 12.0 85.0
2 2.5 13.0 80.0
3 3.5 13.5 82.5
4 4.5 31.5 90.0
5 5.5 60.0 87.5