我正在尝试在接下来的6个月内模拟库存水平:
1-我有未来6个月每天的预期累计需求。
因此,无需重新订购,我的余额每天都会变得更负。
2-我的想法是:
每当库存水平低于3000时,我都会发送一份购买10000的订单,三天后,我的水平将再次提高:
将这个值添加到所有未来值中的最佳方法是什么?
ds saldo
0 2019-01-01 10200.839819
1 2019-01-02 5219.412952
2 2019-01-03 3.161876
3 2019-01-04 -5507.506201
4 2019-01-05 -10730.291221
5 2019-01-06 -14406.833593
6 2019-01-07 -17781.500396
7 2019-01-08 -21545.503098
8 2019-01-09 -25394.427708
我开始这样做:
c = 0
for index, row in forecast_data.iterrows():
if row['saldo'] < 3000:
c += 1
if c == 3:
row['saldo'] + 10000
c = 0
但是它只是添加到实际行中,而不是用于累积的将来行中。
print(row['ds'], row['saldo'])
9 2019-01-10 -29277.647817
答案 0 :(得分:1)
您忘记分配我认为的价值。使用row['saldo'] += 10000
代替row['saldo'] + 10000
答案 1 :(得分:1)
问题在于,您仅向row
添加1000,而不是随后的每个条目添加1000。尝试更换
row['saldo'] + 10000
与
forecast_data['saldo'][index:] += forecast_data['saldo'][index:] + 1000
这将为后面的每个条目增加1000。