Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để thực hiện groupby trên multiindex trong Pandas?

Khung dữ liệu đa chỉ mục là khung dữ liệu có nhiều hơn một chỉ mục. Giả sử sau đây là csv của chúng tôi được lưu trữ trên Máy tính để bàn -

Làm thế nào để thực hiện groupby trên multiindex trong Pandas?

Đầu tiên, hãy nhập thư viện gấu trúc và đọc tệp CSV ở trên -

 nhập gấu trúc dưới dạng pddf =pd.read_csv ("C:/Users/amit_/Desktop/sales.csv") print (df) 

Chúng tôi sẽ tạo cột "Xe" và "Địa điểm" của Khung dữ liệu làm chỉ mục -

 df =df.set_index (['Xe hơi', 'Địa điểm']) 

DataFrame hiện là một DataFrame được lập chỉ mục nhiều với cột ‘Xe’ và ‘Địa điểm’ làm chỉ mục.

Bây giờ, chúng ta hãy sử dụng groupby trên khung dữ liệu đa chỉ mục:

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

Ví dụ

Sau đây là mã -

 nhập gấu trúc dưới dạng pddf =pd.read_csv ("C:/Users/amit_/Desktop/sales.csv") print (df) # set Car và Place cột của DataFrame dưới dạng indexdf =df.set_index (['Car ',' Place ']) # sortingdf.sort_index () # groupby trên multiindex dataframres =df.groupby (level =[' Car ']) [' UnitsSold ']. Mean () print (res) 

Đầu ra

Điều này sẽ tạo ra kết quả sau -

 Nơi bán xe0 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.0 trước>