|
|
你的问题是因为 pivot_table 输出的列顺序与 aggfunc 字典顺序不一致。需要通过调整列的顺序来解决。以下是修改后的代码:
- import pandas as pd
- # 假设 data11 包含列:渠道来源、实收费用、经纪费金额、单号
- df = pd.pivot_table(data11,
- index='渠道来源',
- values=['实收费用', '经纪费金额', '单号'],
- aggfunc={'实收费用':'sum', '经纪费金额':'sum', '单号':'nunique'}).reset_index()
- # 调整列的顺序
- df = df[['渠道来源', '实收费用', '经纪费金额', '单号']]
- # 重命名单号列为单号数量(可选)
- df.rename(columns={'单号':'单号数量'}, inplace=True)
- # 显示结果
- print(df)
复制代码
关键修改点:
1. 在 pivot_table 中明确指定 index 和 values 参数。
2. 使用 df[['渠道来源', '实收费用', '经纪费金额', '单号']] 手动调整列顺序。
3. 可选的重命名步骤,将单号列改为单号数量。
这样就能确保列的顺序为:渠道来源、实收费用、经纪费金额、单号数量。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|