สมมติว่า คุณมี dataframe และผลลัพธ์สำหรับ EWM ที่ปรับแล้วและไม่ได้ปรับคือ -
ปรับ ewm:Id Age0 1.000000 12.0000001 1.750000 12.7500002 2.615385 12.2307693 2.615385 13.4250004 4.670213 14.479339non ปรับ ewm:Id Age0 1.000000 12.0000001 1.666667 12.6666672 2.555556 12.2222223 2.555556 13.4074074 4.650794>วิธีแก้ปัญหา
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนด้านล่าง -
-
กำหนดดาต้าเฟรม
-
คำนวณ ewm ที่ปรับแล้วด้วยดีเลย์ 0.5 โดยใช้ df.ewm(com=0.5).mean()
df.ewm(com=0.5).mean()
-
คำนวณ ewm ที่ไม่ได้ปรับด้วยความล่าช้า 0.5 โดยใช้ df.ewm(com=0.5).mean()
df.ewm(com=0.5,adjust=False).mean()
ตัวอย่าง
นำเข้า numpy เป็น npimport pandas เป็น pddf =pd.DataFrame({'Id':[1, 2, 3, np.nan, 5], 'Age':[12,13,12,14,15]} )print(df)print("ปรับ ewm:\n",df.ewm(com=0.5).mean())print("ไม่ปรับ ewm:\n",df.ewm(com=0.5,adjust=False ).mean())
ผลลัพธ์
Id Age0 1.0 121 2.0 132 3.0 123 NaN 144 5.0 15 ewm ที่ปรับแล้ว:Id Age0 1.000000 12.0000001 1.750000 12.7500002 2.615385 12.2307693 2.615385 13.4250004 4.670213 14.479339 ewm ที่ไม่ได้ปรับแล้ว:Id Age0 1.000000 12.0000001 1.6666667 12.66224.402 1