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

Python - Tính giá trị đầu tiên của nhóm trong DataFrame Pandas

Để tính giá trị đầu tiên của nhóm, sử dụng phương thức groupby.first(). Trước tiên, nhập thư viện cần thiết với bí danh:

import pandas as pd;

Tạo DataFrame với 3 cột:

dataFrame = pd.DataFrame(
    {
        "Car": ['BMW', 'Lexus', 'BMW', 'Tesla', 'Lexus', 'Tesla'],
        "Place": ['Delhi','Bangalore','Pune','Punjab','Chandigarh','Mumbai'],
        "Units": [100, 150, 50, 80, 110, 90]
    }
)

Bây giờ, nhóm DataFrame theo một cột:

groupDF = dataFrame.groupby("Car")

Tính giá trị đầu tiên của nhóm và đặt lại chỉ mục:

res = groupDF.first()
res = res.reset_index()

Ví dụ hoàn chỉnh

Mã nguồn đầy đủ:

import pandas as pd
dataFrame = pd.DataFrame(
    {
        "Car": ['BMW', 'Lexus', 'BMW', 'Tesla', 'Lexus', 'Tesla'],
        "Place": ['Delhi','Bangalore','Pune','Punjab','Chandigarh','Mumbai'],
        "Units": [100, 150, 50, 80, 110, 90]
    }
)
print("DataFrame ...\n", dataFrame)
# nhóm DataFrame theo cột Car
groupDF = dataFrame.groupby("Car")
res = groupDF.first()
res = res.reset_index()
print("\nGiá trị đầu tiên của nhóm = \n", res)

Kết quả

Chương trình sẽ tạo ra kết quả sau. Hiển thị lần xuất hiện đầu tiên của các giá trị trùng lặp, tức là giá trị đầu tiên của nhóm:

DataFrame ...
   Car     Place  Units
0  BMW     Delhi    100
1 Lexus Bangalore  150
2  BMW     Pune      50
3 Tesla  Punjab     80
4 Lexus Chandigarh 110
5 Tesla  Mumbai     90
First of group values =
   Car    Place  Units
0  BMW    Delhi    100
1 Lexus Bangalore  150
2 Tesla  Punjab    80