import pandas as pd
import numpy as np
# pd.options.display.max_columns = 999 # 允许print输出的最大列数
orders_df = pd.read_excel(r"F:\101_pandas视频教程\pandas_excel\Orders.xlsx")
# 获取年
orders_df["year"] = pd.DatetimeIndex(orders_df["Date"]).year
# 获取月
orders_df["month"] = pd.DatetimeIndex(orders_df["Date"]).month
# 获取日
orders_df["day"] = pd.DatetimeIndex(orders_df["Date"]).day
# 获取季度
orders_df["quarter"] = pd.DatetimeIndex(orders_df["Date"]).quarter
# 透视聚合
pt1 = orders_df.pivot_table(index="Category", columns="year", values="Total", aggfunc=np.sum)
pt1.to_excel(r"F:\101_pandas视频教程\pandas_excel\汇总后1.xlsx")
# 分组聚合
groups = orders_df.groupby(["Category", "year"])
s = groups["Total"].sum()
c = groups["ID"].count()
pt2 = pd.DataFrame({"sum": s, "count": c})
pt2.to_excel(r"F:\101_pandas视频教程\pandas_excel\汇总后2.xlsx")