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

เขียนโปรแกรมใน Python เพื่อคำนวณ EWM ที่ปรับแล้วและไม่ได้ปรับใน dataframe ที่กำหนด


สมมติว่า คุณมี 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