Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python – Nhóm cột (Grouping columns) trong Pandas DataFrame

Nhóm dữ liệu trong DataFrame theo cột cụ thể và tính toán thống kê (ví dụ: trung bình) cho từng nhóm. Sử dụng groupby().

Tạo DataFrame

import pandas as pd

dataFrame = pd.DataFrame({
    "Car": ["Audi", "Lexus", "Audi", "Mercedes", "Audi", "Lexus", "Mercedes", "Lexus", "Mercedes"],
    "Reg_Price": [1000, 1400, 1100, 900, 1700, 1800, 1300, 1150, 1350]
})

Nhóm theo cột Car và tính trung bình

res = dataFrame.groupby("Car")
print("Trung bình Reg_Price theo hãng xe:\n", res.mean())

Kết quả

DataFrame...
       Car  Reg_Price
0     Audi       1000
1   Lexus       1400
2     Audi       1100
3 Mercedes        900
4     Audi       1700
5   Lexus       1800
6 Mercedes       1300
7   Lexus       1150
8 Mercedes       1350

Trung bình Reg_Price theo hãng xe...
           Reg_Price
Car
Audi      1266.666667
Lexus     1450.000000
Mercedes  1183.333333

Giải thích

  • groupby("Car") chia DataFrame thành các nhóm theo hãng xe.
  • res.mean() tính trung bình của các cột số (chỉ có Reg_Price) cho mỗi nhóm.
  • Kết quả là DataFrame với index là tên hãng, cột là giá trị trung bình.

Các hàm tập hợp khác: sum(), min(), max(), count(), std(), agg() cho nhiều hàm cùng lúc.