我有一个包含库存信息的数据框。一列是产品类型(即A、B、C),一列是每个产品的库存数量,一列记录日期(即第1天、第2天、第3天)。例如(见下表),第1天,我们有1个产品A;第2天,我们有3个产品A和2个产品B;第3天,我们有6个产品B
product | inventory | day
A | 1 | 1
A | 3 | 2
B | 2 | 2
B | 6 | 3
我想计算每天的产品变化。所需的结果表如下所示。诀窍是,每天都有一些产品可能会消失或一些新产品可能进来。例如,在第3天,产品A不再存在(换句话说,第2天的所有3个产品A在第3天都消失了)。在第二天,新产品B进来了,因为我们在第一天没有存货。记住,有些产品可能会在某一天消失,然后回来,然后再消失。你知道吗
product | inventory_change | day
A | 1 | 1
A | 2 | 2
B | 2 | 2
A | -3 | 3
B | 4 | 3
我确信我可以使用循环遍历每一行来实现它。我想知道是否有更有效的方法来完成它没有循环?我想使用groupby
,但仍然无法找到不使用循环的方法,特别是考虑到可用的产品列表每天都可能不同(即第1天:a,第2天:a,B;第3天:B),有什么想法或建议吗?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐