我有一个多层次的列 Dataframe 的行之一如下:
如何为每个“年”添加列“销售额”=“数量”*“价格”?
字典格式的输入 Dataframe :
{('Qty', 2001): [50, 50], ('Qty', 2002): [100, 10], ('Qty', 2003): [200, 20], ('Qty', 2004): [300, 30], ('Qty', 2005): [400, 40], ('Price', 2001): [20, 11], ('Price', 2002): [21, 12], ('Price', 2003): [22, 13], ('Price', 2004): [23, 14], ('Price', 2005): [24, 15]}
目前,我正在为每一年分别拆分 Dataframe ,并添加一个计算列。如果有更简单的方法,那就太好了。
以下是预期输出
2条答案
按热度按时间mmvthczy1#
您可以使用列表解析创建所需的列名,然后简单地分配乘法(
df.mul
)。4nkexdtk2#
让我们使用
stack
来展平多索引列,然后相乘,并使用解栈重新整形