我有两个数据框架:贷款人和借款人。我想结合贷款人和借款人的价值,如下所示
LenderDF = pd.DataFrame({
'LenderID':['Lender 1', 'Lender 2','Lender 3','Lender 4', 'Lender 5'],
'AmountHave': [300, 150, 500, 100, 200]
})
borrowerDF = pd.DataFrame({
'borrowerID': ['Borrower 1', 'Borrower 2','Borrower 3','Borrower 4'],
'AmountNeed': [100,200,150,300]
})
print(LenderDF)
print(borrowerDF)
LenderID AmountHave
0 Lender 1 300
1 Lender 2 150
2 Lender 3 500
3 Lender 4 100
4 Lender 5 200
borrowerID AmountNeed
0 Borrower 1 100
1 Borrower 2 200
2 Borrower 3 150
3 Borrower 4 300
我试图得到的最终结果是:
BorrowerID AmountNeeded LenderID LenderHave(after lending amount) RemainingAmount
0 Borrower 1 100 Lender 1 300 200
1 Borrower 2 200 Lender 1 200 0
2 Borrower 3 150 Lender 2 150 0
3 Borrower 4 300 Lender 3 500 200
例如:
像这样,迭代每个贷方行,以此类推,直到没有贷方剩余
这是我的解决办法。我也将数据帧转换为列表。本准则还考虑了借款人必须向多个贷款人借款的情况,如下例所示:
我不认为使用pandas join函数有什么好的方法可以做到这一点,这确实是一个问题,你应该迭代一个借贷者列表。以下是您所追求的:
相关问题 更多 >
编程相关推荐