[问题] 条件扣减金额及消订单

楼主: rounders (望仔)   2020-06-30 19:08:35
大家好
我有一些订单资料(data)有日期、人名、金额,
客户会汇钱进来(remit),想把汇入的钱日期顺序扣减订单金额并入data第四栏
如果汇入余额为0,就把符合金额订单列出;如果金额无法刚好抵订单就产出另一资料
再以人工处理。
目前只想到先抓人名产出各别DF的金额栏转为LIST,再用循环扣除判断余数是否为0或负数
刚写还是很卡
所以上来问问这样做是可行的吗?有什么好方法或是方向呢,感谢大家了。
订单和汇入款如下
import pandas as pd
data = pd.DataFrame(
[['0601', 'Ming', 500],
['0602', 'Ming', 800],
['0601', 'Wang', 600],
['0602', 'Wang', 400],
['0603', 'Wang', 1500],
['0604', 'Wang', 5500],
['0601', 'Lin', 1500],
['0602', 'Lin', 2500],
['0603', 'Lin', 3500]],
columns=['Date', 'Name', 'Trade'])
remit = pd.DataFrame(
[['Ming', 1300],
['Wang', 2500],
['Lin', 1800]],
columns=['Name', 'remit'])
作者: mantour (朱子)   2020-07-01 04:41:00
我觉得你的规则还不够明确。如果有一客户A订单金额依序为500,200,200,300,800,然后汇了一笔800,你想要显示哪一笔或哪几笔订单呢。
楼主: rounders (望仔)   2020-07-01 10:04:00
这种另列清单处理汇款是有期限的 所以依照日期 如金额不合可能因汇费或漏中间单等原因,需要联络客户,这目的是把大部分余额0的资料自动核对,就只用处理少部分异常
作者: Czero (悠闲)   2020-07-03 00:12:00
试试pandas的cumsum应该可以写的较为简洁

Links booklink

Contact Us: admin [ a t ] ucptt.com