python - 如何将列数据用作 values 来创建更多标题

抱歉,如果我的问题听起来令人困惑,我找不到更好的措辞。我这里有这段代码来计算枢轴 table

price_pivot_data = pd.pivot_table(out_data, values=["Price"], index=['Date', 'Payment method'])

这是我当前的支点 table:

0                          Price
Date       Payment method       
2022-05-23 Void              0.0
2022-05-25 Credit            8.0
           Validation        8.0
2022-05-28 Credit            8.0

我想要的是使用付款方式列作为多列的标题。所以是这样的:

Date        Void   Credit  Validation  Some other payment type 
2022-05-23  0.0    0.0     0.0         0.0
2022-05-25  0.0    8.0     8.0         0.0
2022-05-28  0.0    8.0     0.0         0.0

关于其他支付类型列,NaN 很好。对于其他付款类型部分,我可以手动在后面添加该列,因此它不是必需的。

这可能吗?提前致谢。

回答1

您可以尝试 unstack 然后展平多索引列

df = price_pivot_data.unstack().fillna(0)
df.columns = df.columns.get_level_values(1)
print(df)

Payment method  Credit  Validation  Void
Date
2022-05-23         0.0         0.0   0.0
2022-05-25         8.0         8.0   0.0
2022-05-28         8.0         0.0   0.0

相似文章

最新文章