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 ngày và tính toán tổng Giá đăng ký với khoảng thời gian trong ngày cho ví dụ của chúng tôi được hiển thị bên dưới cho Hồ sơ bán xe.
Đặt tần suất dưới dạng khoảng ngày trong phương pháp cá mú (), có nghĩa là, nếu tần suất là 7D, điều đó có nghĩa là dữ liệu được nhóm theo khoảng thời gian 7 ngày của mỗi tháng cho đến ngày cuối cùng được đưa ra trong cột ngày.
Đầu tiên, giả sử như sau là Pandas DataFrame của chúng tôi với ba cột -
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("2021-07-11"), pd.Timestamp("2021-06-25"), pd.Timestamp("2021-06-29"), pd.Timestamp("2021-03-20"), pd.Timestamp("2021-01-22"), pd.Timestamp("2021-01-06"), pd.Timestamp("2021-01-04"), pd.Timestamp("2021-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 7D tức là khoảng 7 ngày được nhóm lại cho đến ngày cuối cùng được đề cập trong cột -
print"\nGroup Dataframe by 7 days...\n",dataFrame.groupby(pd.Grouper(key='Date_of_Purchase', axis=0, freq='7D')).sum()
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("2021-07-11"), pd.Timestamp("2021-06-25"), pd.Timestamp("2021-06-29"), pd.Timestamp("2021-03-20"), pd.Timestamp("2021-01-22"), pd.Timestamp("2021-01-06"), pd.Timestamp("2021-01-04"), pd.Timestamp("2021-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 7 days...\n",dataFrame.groupby(pd.Grouper(key='Date_of_Purchase', axis=0, freq='7D')).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 2021-07-11 1400 2 Tesla 2021-06-25 1100 3 Mercedes 2021-06-29 900 4 BMW 2021-03-20 1700 5 Toyota 2021-01-22 1800 6 Nissan 2021-01-06 1300 7 Bentley 2021-01-04 1150 8 Mustang 2021-05-09 1350 Group Dataframe by 7 days... Reg_Price Date_of_Purchase 2021-01-04 2450.0 2021-01-11 NaN 2021-01-18 1800.0 2021-01-25 NaN 2021-02-01 NaN 2021-02-08 NaN 2021-02-15 NaN 2021-02-22 NaN 2021-03-01 NaN 2021-03-08 NaN 2021-03-15 1700.0 2021-03-22 NaN 2021-03-29 NaN 2021-04-05 NaN 2021-04-12 NaN 2021-04-19 NaN 2021-04-26 NaN 2021-05-03 1350.0 2021-05-10 NaN 2021-05-17 NaN 2021-05-24 NaN 2021-05-31 NaN 2021-06-07 1000.0 2021-06-14 NaN 2021-06-21 1100.0 2021-06-28 900.0 2021-07-05 1400.0