Sufficiency Economy
Group Blog
 
All blogs
 
Python : Machine Learning [5]

เมื่อวานเรียนบทที่ 8 สอนเรื่อง Grouping Data
โดยใช้หลัก Split Apply Combine SAC งงส่ะ 2

res=df.groupby("START*")["MILES*"].agg(["mean"]).head(20)
ทำ grouping ด้วย column START* แล้วนำค่า MILES* มาคำนวณค่าเฉลี่ย และให้แสดงผลเพียง 20 บรรทัด

res.reset_index(inplace=True)
res.columns=["START_CITY","AVG_DIST"]

กำหนดชื่อ column ใหม่ ให้เข้าใจง่ายขึ้น แต่ต้อง reset_index ก่อนนะ งงๆ เหมือนกัน

res=df.groupby(["START*","STOP*"])["MILES*"].agg(["mean","max","min"]).head(20)
เพิ่มการคำนวณหาค่า max min จาก column MILES*

res=df.groupby(["START*"]).agg({"MILES*":["mean"],"START_DATE*":["min","max"]}).head(20)
ถ้าเราต้องการคำนวณค่า คนละcolumnกัน ต้องใช้ datetype แบบ dictionary {} แล้วกำหนดเป็นคู่ๆไป

df["START_DATE*"]=pd.to_datetime(df["START_DATE*"],format="%m/%d/%Y %H:%M")
START_DATE* ต้องแปลงให้เป็น datetime ก่อน ถึงจะคำนวณได้ ถ้าทำแล้วเกิด ERROR ให้ดูข้อมูล Uber.csv ที่ให้มาว่ามีบรรทัดได้ที่รูปแบบไม่ถูกต้อง ??

ทดลองก็ประมาณรูปข้างล่างครับ




ข้างล่างแสดงการ convert datetime





Create Date : 20 สิงหาคม 2563
Last Update : 20 สิงหาคม 2563 21:30:22 น. 0 comments
Counter : 935 Pageviews.

ชื่อ :
Comment :
  *ใช้ code html ตกแต่งข้อความได้เฉพาะสมาชิก
 

wink99_th
Location :
พิษณุโลก Thailand

[Profile ทั้งหมด]

ฝากข้อความหลังไมค์
Rss Feed
Smember
ผู้ติดตามบล็อก : 8 คน [?]




New Comments
Friends' blogs
[Add wink99_th's blog to your web]
Links
 

 Pantip.com | PantipMarket.com | Pantown.com | © 2004 BlogGang.com allrights reserved.