[問題] 條件扣減金額及消訂單

作者: 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