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

จะทำ groupby บน multiindex ใน Pandas ได้อย่างไร


Multiindex Data Frame เป็นกรอบข้อมูลที่มีดัชนีมากกว่าหนึ่งตัว สมมติว่าต่อไปนี้คือ csv ของเราที่จัดเก็บไว้ในเดสก์ท็อป -

จะทำ groupby บน multiindex ใน Pandas ได้อย่างไร

ขั้นแรก นำเข้าไลบรารีแพนด้าและอ่านไฟล์ CSV ด้านบน -

นำเข้าแพนด้าเป็น pddf =pd.read_csv("C:/Users/amit_/Desktop/sales.csv") พิมพ์ (df)

เราจะสร้างคอลัมน์ 'รถยนต์' และ 'สถานที่' ของ Dataframe เป็นดัชนี -

df =df.set_index(['Car', 'Place'])

ตอนนี้ DataFrame เป็น DataFrame แบบหลายดัชนีที่มีคอลัมน์ 'Car' และ 'Place' เป็นดัชนี

ตอนนี้ ให้เราใช้ groupby บน multiindex dataframe:

res =df.groupby(level=['Car'])['UnitsSold'].mean() print(res)

ตัวอย่าง

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

นำเข้าแพนด้าเป็น pddf =pd.read_csv("C:/Users/amit_/Desktop/sales.csv")print(df)# set Car and Place คอลัมน์ของ DataFrame เป็น indexdf =df.set_index(['Car ', 'Place'])# sortingdf.sort_index()# groupby บน multiindex dataframres =df.groupby(level=['Car'])['UnitsSold'].mean()print(res)

ผลลัพธ์

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

 สถานที่ขายรถ ขาย0 BMW Delhi 951 Mercedes Hyderabad 802 Lamborgini Chandigarh 803 Audi Bangalore 754 Mercedes Hyderabad 905 Porsche Mumbai 906 RollsRoyce Mumbai 957 BMW Delhi 50CarAudi 75.8BMW 72.5Lamborgini 80.0Mercedes 85.0Porsche 90.0RollsRollsRoyce 95.0 ชื่อ:หน่วย ขายแล้ว 64 dtype:float ก่อน>