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

Làm thế nào để áp dụng danh sách tổng hợp trên mọi nhóm gấu trúc DataFrame?

Để áp dụng danh sách tổng hợp, hãy sử dụng phương thức agg (). Đầu tiên, hãy nhập thư viện được yêu cầu -

import pandas as pd

Tạo DataFrame có hai cột -

dataFrame = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Lexus', 'Mustang', 'Bentley', 'Mustang'],"Units": [100, 150, 110, 80, 110, 90]
   }
)

Chỉ định danh sách làm đối số bằng cách sử dụng agg () -

dataFrame = dataFrame.groupby('Car').agg(list)

Ví dụ

Sau đây là mã hoàn chỉnh -

import pandas as pd

# Create DataFrame
dataFrame = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Lexus', 'Mustang', 'Bentley', 'Mustang'],"Units": [100, 150, 110, 80, 110, 90]
   }
)

print("DataFrame ...\n",dataFrame)

# specifying list as argument using agg()
dataFrame = dataFrame.groupby('Car').agg(list)

# displaying dataframe lists
print("\nDataFrame ...\n",dataFrame)

Đầu ra

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

DataFrame ...
       Car   Units
0      BMW     100
1    Lexus     150
2    Lexus     110
3  Mustang      80
4  Bentley     110
5  Mustang      90

DataFrame ...
            Units
Car
BMW         [100]
Bentley     [110]
Lexus   [150,110]
Mustang   [80,90]