Chúng tôi sẽ nhóm các Pandas DataFrame bằng cách sử dụng groupby (). Chọn cột sẽ được sử dụng bằng chức năng cá mú. Chúng tôi sẽ nhóm theo năm và tính toán tổng Giá đăng ký với khoảng thời gian theo năm cho ví dụ của chúng tôi được hiển thị bên dưới cho Hồ sơ Bán xe.
Đầu tiên, giả sử như sau là Pandas DataFrame của chúng tôi với ba cột -
# dataframe with one of the columns as Date_of_Purchase dataFrame = pd.DataFrame( { "Car": ["Audi", "Lexus", "Tesla", "Mercedes", "BMW", "Toyota", "Nissan", "Bentley", "Mustang"], "Date_of_Purchase": [pd.Timestamp("2021-06-10"), pd.Timestamp("2019-07-11"), pd.Timestamp("2016-06-25"), pd.Timestamp("2021-06-29"), pd.Timestamp("2020-03-20"), pd.Timestamp("2019-01-22"), pd.Timestamp("2011-01-06"), pd.Timestamp("2013-01-04"), pd.Timestamp("2014-05-09") ], "Reg_Price": [1000, 1400, 1100, 900, 1700, 1800, 1300, 1150, 1350] } )
Tiếp theo, sử dụng Grouper để chọn cột Date_of_Purchase trong hàm theo nhóm. Tần suất được đặt là 3 năm, tức là khoảng thời gian 3 năm được nhóm lại.
Ví dụ
Sau đây là mã -
import pandas as pd # dataframe with one of the columns as Date_of_Purchase dataFrame = pd.DataFrame( { "Car": ["Audi", "Lexus", "Tesla", "Mercedes", "BMW", "Toyota", "Nissan", "Bentley", "Mustang"], "Date_of_Purchase": [pd.Timestamp("2021-06-10"), pd.Timestamp("2019-07-11"), pd.Timestamp("2016-06-25"), pd.Timestamp("2021-06-29"), pd.Timestamp("2020-03-20"), pd.Timestamp("2019-01-22"), pd.Timestamp("2011-01-06"), pd.Timestamp("2013-01-04"), pd.Timestamp("2014-05-09") ], "Reg_Price": [1000, 1400, 1100, 900, 1700, 1800, 1300, 1150, 1350] } ) print("DataFrame...\n",dataFrame) # Grouper to select Date_of_Purchase column within groupby function print("\nGroup Dataframe by 3 years...\n",dataFrame.groupby(pd.Grouper(key='Date_of_Purchase', axis=0, freq='3Y')).sum())
Đầu ra
Điều này sẽ tạo ra kết quả sau -
DataFrame... Car Date_of_Purchase Reg_Price 0 Audi 2021-06-10 1000 1 Lexus 2019-07-11 1400 2 Tesla 2016-06-25 1100 3 Mercedes 2021-06-29 900 4 BMW 2020-03-20 1700 5 Toyota 2019-01-22 1800 6 Nissan 2011-01-06 1300 7 Bentley 2013-01-04 1150 8 Mustang 2014-05-09 1350 Group Dataframe by 3 years... Reg_Price Date_of_Purchase 2011-12-31 1300 2014-12-31 2500 2017-12-31 1100 2020-12-31 4900 2023-12-31 1900