我无法弄清楚这一点,因为知道熊猫具有cumsum(),但是我无法找出任何有关累计差异的信息(如果在这里甚至需要这样做的话)。
我有一个这样的DataFrame:
Amt | Storage 1 | Storage 2 | Sell | Season |
Date
01/01/2000 10 5 5 0 Summer
01/02/2000 10 10 10 0 Summer
01/03/2000 10 15 15 0 Summer
01/04/2000 10 20 20 0 Summer
01/05/2000 10 22.5 27.5 0 Summer
01/06/2000 10 22.5 30 7.5 Summer
01/07/2000 10 22.5 30 17.5 Summer
其中两个[Storage]
的存储1上限为22.5,存储2的上限为30,并且[Sell]
由多余的[Amt]
填充。
在冬天,我想开始清空存储空间,存储空间的大小由其他函数中的变量确定。我可以卖出的总金额是硬编码的-我们可以将其任意设置为20-但实际上我想从上述变量中减去[Amt]
,例如:
dailysell = 20 - ['Amt']
,这将给我10余元。我想拆分该金额,然后从存储列中减去该金额,然后汇总['Sell']
列中的已售出总金额,以使结果数据框看起来像:
Amt | Storage 1 | Storage 2 | Sell | Season |
Date
01/01/2000 10 5 5 0 Summer
01/02/2000 10 10 10 0 Summer
01/03/2000 10 15 15 0 Summer
01/04/2000 10 20 20 0 Summer
01/05/2000 10 22.5 27.5 0 Summer
01/06/2000 10 22.5 30 7.5 Summer
01/07/2000 10 22.5 30 17.5 Summer
01/07/2000 10 17.5 25 37.5 Winter
01/08/2000 10 12.5 20 57.5 Winter
..........
01/10/2000 10 2.5 5 97.5 Winter
01/11/2000 10 0 0 115.0 Winter
如您所见,理想结果采用理想化的10/2分割,并尝试每次都减去偶数,然后将其裁剪为0。我尝试使用.diff.cumsum()
几种方法,但无济于事。
我为这么长的问题道歉-这是我想到的最短的方法。请让我知道是否有任何不必要的东西,或者是否需要澄清。
谢谢!